directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Felix Knecht <fel...@apache.org>
Subject Re: Studio Maven Build
Date Sat, 08 Dec 2007 16:29:56 GMT
Felix Knecht schrieb:
> Stefan Seelmann schrieb:
>> Hi Felix,
>>
>>> mvn
>>> - 'install' is needed because some plugin projects are referencing
>>> studio-dsml-parser witch doesn't already exists in local mvn repository
>>> on first run.
>>> - 'eclipse:eclipse' creates the .project and .classpath files in the
>>> module folders
>>> - 'studio.eclipse' adapts the .classpath to have entries like
>>> <classpathentry path="lib/commons-io-1.3.1.jar" exported="true"
>>> kind="lib"/> and adapts the 'Bundle-ClassPath' entry in the manifest.mf
>>>
>> I just found one option for the eclipse:eclipse goal:
>>
>> <pde>true</pde>
>> http://maven.apache.org/plugins/maven-eclipse-plugin/eclipse-mojo.html#pde
>>
>> It seems it makes something similar like the studio:eclipse goal.
>>
> 
> Almost yes. I played with it too, but I wasn't able to add the 'lib' directory prefix.
To copy the needed dependencies
> to the studio/{plugin}/lib directory we can use the maven-dependency-plugin as a workaround
but to add then the right
> path to the MANIFEST.MF I haven't found any solution using the pde option.
> That's why I created the goal studio:eclipse - copy the nonscoped 'provided' dependencies
to the lib directory (instead
> of using the workaround) and adapt the Bundle-ClassPath in the Manifest file. I prefere
a solution where you only need
> to change the dependencies in the pom instead of one you need to make the changes as
well in the manifest file. And even
> then is still the open point what to do with the prefixing directory 'lib'. We can skip
it and have the jar files in the
> root of the created jar file like e.g. for studio-jars:

Maybe the new bundle-plugin can help to solve this:
http://cwiki.apache.org/confluence/display/FELIX/Maven+Bundle+Plugin+%28BND%29

> 
> felix@donar ~/svn/apache/directory/maven-studio/studio-jars $ jar ft target/org.apache.directory.studio.jars-1.0.0.jar
> META-INF/
> META-INF/MANIFEST.MF
> antlr-2.7.7.jar
> shared-ldap-0.9.8-SNAPSHOT.jar
> shared-ldap-constants-0.9.8-SNAPSHOT.jar
> studio-dsml-parser-0.4.1.jar
> shared-asn1-0.9.8-SNAPSHOT.jar
> commons-collections-3.2.jar
> dom4j-1.6.1.jar
> nlog4j-1.2.25.jar
> xpp3-1.1.3.4.O.jar
> META-INF/LICENSE
> META-INF/NOTICE
> 
> instead of the now existing
> 
> felix@donar ~/svn/apache/directory/maven-studio/studio-jars $ jar ft target/org.apache.directory.studio.jars-1.0.0.jar
> META-INF/
> META-INF/MANIFEST.MF
> lib/
> lib/antlr-2.7.7.jar
> lib/shared-ldap-0.9.8-SNAPSHOT.jar
> lib/shared-ldap-constants-0.9.8-SNAPSHOT.jar
> lib/studio-dsml-parser-0.4.1.jar
> lib/shared-asn1-0.9.8-SNAPSHOT.jar
> lib/commons-collections-3.2.jar
> lib/dom4j-1.6.1.jar
> lib/nlog4j-1.2.25.jar
> lib/xpp3-1.1.3.4.O.jar
> META-INF/LICENSE
> META-INF/NOTICE
> 
> 
> If the lib prefix isn't absolutely needed or if you find a solution to prefix using the
pde option  I'm absolutely +1
> using the pde option and not having our own plugin for this.
> 
> Felix
> 
> 
>> I'll experiment with it a bit...
>>
>> Regards,
>> Stefan
>>
> 


Mime
View raw message