Please find the introductory article at
https://docs.google.com/document/d/1Ba24Eo9cs10xbOhV93JUt1gRzIQ-SX4E4nmO8T6UNSA/edit#
Thursday, July 4, 2013
Monday, June 4, 2012
Using Pax Construct
history:
git clone https://github.com/ops4j/org.ops4j.pax.construct.git
cd org.ops4j.pax.construct
mvn clean install
mvn site
file:///Users/alec/product/pax-construct/org.ops4j.pax.construct/target/site/index.html
git clone https://github.com/ops4j/org.ops4j.pax.construct.git
cd org.ops4j.pax.construct
mvn clean install
mvn site
file:///Users/alec/product/pax-construct/org.ops4j.pax.construct/target/site/index.html
http://repo1.maven.org/maven2/org/ops4j/pax/construct/scripts/1.5/scripts-1.5.zip
Spring DM Example:
#!/bin/sh #-------------------------------- # let's start with a new project #-------------------------------- pax-create-project -g examples -a spring cd spring #----------------------------------------------------------------------------------- # first import the Spring Dynamic-Modules Extender bundle - we use importTransitive # to also import any bundles it depends on and widenScope to do an exhaustive check # of all dependencies (normally only "provided" scope dependencies are checked) #----------------------------------------------------------------------------------- pax-add-repository -i com.springsource.repository.bundles.external -u http://repository.springsource.com/maven/bundles/external pax-import-bundle -g org.springframework.osgi -a spring-osgi-extender -v 1.1.2 -- -DimportTransitive -DwidenScope #------------------------------------------------------------ # create new OSGi service bundle with example code and tests #------------------------------------------------------------ pax-create-bundle -p org.example.service -- -Djunit #-------------------------------------------------------------------- # create new Spring Dynamic Modules bean with example code and tests #-------------------------------------------------------------------- pax-create-bundle -p org.example.bean -- -Dspring -Djunit #---------------------------- # finally, build and deploy! #---------------------------- exec mvn clean install pax:provision "-Dframework=equinox"
Saturday, September 10, 2011
Another scp peculiarity
If you want to scp the content of the current directory (its files and subdirs) to the target, you type:
scp -r . $HOST:$TARGET
If you want to scp the current directory, along with its name, under the target, you type:
scp -r ../$CURRENT $HOST:$TARGET
Wednesday, March 23, 2011
Inheriting GWT modules from other Eclipse projects
What if you already have some Eclipse GWT project in the workspace and you want to use it in your current GWT project? Here are the steps (assuming obt2j is the name of the project you want to use and obt is the name of the package where the module you want to inherit from (Obt2) resides).
1. Select your current GWT project in Package Explorer. Go to Properties -> Java Build Path -> Projects, Add..., select obt2j, OK. Select Libraries, Add Class Folder..., select obt2j/src/obt. OK.
2. In a source file from your current project, make a reference to the code owned by module obt. You will see errors, and 1 quick fix will be available:
Import GWT module obt.Obt2
Apply the fix ONLY ONCE. The following line,
1. Select your current GWT project in Package Explorer. Go to Properties -> Java Build Path -> Projects, Add..., select obt2j, OK. Select Libraries, Add Class Folder..., select obt2j/src/obt. OK.
2. In a source file from your current project, make a reference to the code owned by module obt. You will see errors, and 1 quick fix will be available:
Import GWT module obt.Obt2
Apply the fix ONLY ONCE. The following line,
<inherits name="obt.Obt2"/>
, is being added to the corresponding module definition in your current project. Now your current project is hooked to project obt2j.
Starting a new GWT project from scratch (Eclipse)
The GWT Starter Project gets generated for you by default. When you get tired removing the generated code each time you create a new GWT project, and if you use Eclipse IDE, you can use the following nice menu items:
- File -> New -> Module,
- File -> New -> HTML Page, and
- File -> New -> Entry Point Class
in this exact order. (The shortcut for File -> New on a Mac is option-command-N.) Some details are due, though.
1. Select the New Web Application Project menu item. Project name: site1, Package: s1, unselect Use Google App Engine, unselect Generate GWT sample code. Finish.
2. In the Package Explorer view, select your site1 project. Select the New GWT Module menu item. Module name: m1, Package: s1, Finish. In the generated m1.gwt.xml, add an attribute to the root element; the result should look like this:
<module rename-to="m1">
If you do not do this, the next step will produce incorrect results.
3. Select the New HTML Page menu item. File name: welcome.html, Finish.
4. Select the New Entry Point Class menu item, Name: EntryPoint, Finish. Make a note - the m1.gwt.xml file has been updated accordingly in the editor, and you now MUST save this file.
If you now debug your site1, you will see EntryPoint.onModuleLoad() started.
If you now debug your site1, you will see EntryPoint.onModuleLoad() started.
Summing up, the trick is to rename the generated module.
Subscribe to:
Posts (Atom)