You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by pa...@apache.org on 2010/08/05 18:27:35 UTC

svn commit: r982679 - in /directory/studio/trunk: ./ org.apache.commons.codec/ org.apache.commons.collections/

Author: pamarcelot
Date: Thu Aug  5 16:27:33 2010
New Revision: 982679

URL: http://svn.apache.org/viewvc?rev=982679&view=rev
Log:
Addded two new plugins for 'org.apache.commons.codec' and 'org.apache.commons.collections'.

Added:
    directory/studio/trunk/org.apache.commons.codec/
    directory/studio/trunk/org.apache.commons.codec/.classpath
    directory/studio/trunk/org.apache.commons.codec/.project
    directory/studio/trunk/org.apache.commons.codec/pom.xml
    directory/studio/trunk/org.apache.commons.collections/
    directory/studio/trunk/org.apache.commons.collections/.classpath
    directory/studio/trunk/org.apache.commons.collections/.project
    directory/studio/trunk/org.apache.commons.collections/pom.xml
Modified:
    directory/studio/trunk/pom.xml

Added: directory/studio/trunk/org.apache.commons.codec/.classpath
URL: http://svn.apache.org/viewvc/directory/studio/trunk/org.apache.commons.codec/.classpath?rev=982679&view=auto
==============================================================================
--- directory/studio/trunk/org.apache.commons.codec/.classpath (added)
+++ directory/studio/trunk/org.apache.commons.codec/.classpath Thu Aug  5 16:27:33 2010
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry excluding="**/*.java" kind="src" path="target/maven-shared-archive-resources"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="lib" path="src/main/resources" exported="true"/>
+	<classpathentry kind="output" path="target/classes"/>
+</classpath>

Added: directory/studio/trunk/org.apache.commons.codec/.project
URL: http://svn.apache.org/viewvc/directory/studio/trunk/org.apache.commons.codec/.project?rev=982679&view=auto
==============================================================================
--- directory/studio/trunk/org.apache.commons.codec/.project (added)
+++ directory/studio/trunk/org.apache.commons.codec/.project Thu Aug  5 16:27:33 2010
@@ -0,0 +1,19 @@
+<projectDescription>
+  <name>org.apache.commons.codec</name>
+  <comment>NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
+  <buildSpec>
+    <buildCommand>
+      <name>org.eclipse.jdt.core.javabuilder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>org.eclipse.pde.ManifestBuilder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>org.eclipse.pde.SchemaBuilder</name>
+    </buildCommand>
+  </buildSpec>
+  <natures>
+    <nature>org.eclipse.jdt.core.javanature</nature>
+    <nature>org.eclipse.pde.PluginNature</nature>
+  </natures>
+</projectDescription>
\ No newline at end of file

Added: directory/studio/trunk/org.apache.commons.codec/pom.xml
URL: http://svn.apache.org/viewvc/directory/studio/trunk/org.apache.commons.codec/pom.xml?rev=982679&view=auto
==============================================================================
--- directory/studio/trunk/org.apache.commons.codec/pom.xml (added)
+++ directory/studio/trunk/org.apache.commons.codec/pom.xml Thu Aug  5 16:27:33 2010
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+  
+  http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!--
+  @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.directory.studio</groupId>
+    <artifactId>parent</artifactId>
+    <version>2.0.0-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>org.apache.commons.codec</artifactId>
+  <version>${org.apache.commons.codec.version}</version>
+  
+  <name>Apache Commons Codec (for Apache Directory Studio)</name>
+  <packaging>jar</packaging>
+
+  <description />
+  
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-eclipse-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.directory.studio</groupId>
+        <artifactId>studio-maven-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
+        <configuration>
+          <archive>
+            <manifestFile>META-INF/MANIFEST.MF</manifestFile>
+            <addMavenDescriptor>false</addMavenDescriptor>
+          </archive>
+        </configuration>
+      </plugin>
+      <!-- MANIFEST.MF Generation -->
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <extensions>true</extensions>
+        <configuration>
+          <manifestLocation>META-INF</manifestLocation>
+          <instructions>            
+            <Bundle-SymbolicName>${artifactId};singleton:=true</Bundle-SymbolicName>
+            <Bundle-Localization>plugin</Bundle-Localization>
+            <Export-Package>*</Export-Package>
+            <Import-Package>!</Import-Package>
+            <Private-Package>!</Private-Package>
+          </instructions>
+        </configuration>
+        <executions>
+          <execution>
+            <id>generate-manifest</id>
+            <phase>process-classes</phase>
+            <goals>
+              <goal>manifest</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      
+      <!-- Unpack the jar -->
+      <plugin>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>unpack-apache-directory-studio-plugin</id>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>unpack</goal>
+            </goals>
+            <configuration>
+              <overWrite>true</overWrite>
+              <outputDirectory>src/main/resources</outputDirectory>
+              <artifactItems>
+                <artifactItem>
+                  <groupId>commons-codec</groupId>
+                  <artifactId>commons-codec</artifactId>
+                  <excludes>META-INF/**</excludes>
+                </artifactItem>
+              </artifactItems>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <!-- No tests to run -->
+      <plugin>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>

Added: directory/studio/trunk/org.apache.commons.collections/.classpath
URL: http://svn.apache.org/viewvc/directory/studio/trunk/org.apache.commons.collections/.classpath?rev=982679&view=auto
==============================================================================
--- directory/studio/trunk/org.apache.commons.collections/.classpath (added)
+++ directory/studio/trunk/org.apache.commons.collections/.classpath Thu Aug  5 16:27:33 2010
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry excluding="**/*.java" kind="src" path="target/maven-shared-archive-resources"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="lib" path="src/main/resources" exported="true"/>
+	<classpathentry kind="output" path="target/classes"/>
+</classpath>

Added: directory/studio/trunk/org.apache.commons.collections/.project
URL: http://svn.apache.org/viewvc/directory/studio/trunk/org.apache.commons.collections/.project?rev=982679&view=auto
==============================================================================
--- directory/studio/trunk/org.apache.commons.collections/.project (added)
+++ directory/studio/trunk/org.apache.commons.collections/.project Thu Aug  5 16:27:33 2010
@@ -0,0 +1,19 @@
+<projectDescription>
+  <name>org.apache.commons.collections</name>
+  <comment>NO_M2ECLIPSE_SUPPORT: Project files created with the maven-eclipse-plugin are not supported in M2Eclipse.</comment>
+  <buildSpec>
+    <buildCommand>
+      <name>org.eclipse.jdt.core.javabuilder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>org.eclipse.pde.ManifestBuilder</name>
+    </buildCommand>
+    <buildCommand>
+      <name>org.eclipse.pde.SchemaBuilder</name>
+    </buildCommand>
+  </buildSpec>
+  <natures>
+    <nature>org.eclipse.jdt.core.javanature</nature>
+    <nature>org.eclipse.pde.PluginNature</nature>
+  </natures>
+</projectDescription>
\ No newline at end of file

Added: directory/studio/trunk/org.apache.commons.collections/pom.xml
URL: http://svn.apache.org/viewvc/directory/studio/trunk/org.apache.commons.collections/pom.xml?rev=982679&view=auto
==============================================================================
--- directory/studio/trunk/org.apache.commons.collections/pom.xml (added)
+++ directory/studio/trunk/org.apache.commons.collections/pom.xml Thu Aug  5 16:27:33 2010
@@ -0,0 +1,123 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+  
+  http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!--
+  @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.directory.studio</groupId>
+    <artifactId>parent</artifactId>
+    <version>2.0.0-SNAPSHOT</version>
+  </parent>
+
+  <artifactId>org.apache.commons.collections</artifactId>
+  <version>${org.apache.commons.collections.version}</version>
+  
+  <name>Apache Commons Collections (for Apache Directory Studio)</name>
+  <packaging>jar</packaging>
+
+  <description />
+  
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-eclipse-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.directory.studio</groupId>
+        <artifactId>studio-maven-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+      <plugin>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-jar-plugin</artifactId>
+        <configuration>
+          <archive>
+            <manifestFile>META-INF/MANIFEST.MF</manifestFile>
+            <addMavenDescriptor>false</addMavenDescriptor>
+          </archive>
+        </configuration>
+      </plugin>
+      <!-- MANIFEST.MF Generation -->
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <extensions>true</extensions>
+        <configuration>
+          <manifestLocation>META-INF</manifestLocation>
+          <instructions>            
+            <Bundle-SymbolicName>${artifactId};singleton:=true</Bundle-SymbolicName>
+            <Bundle-Localization>plugin</Bundle-Localization>
+            <Export-Package>*</Export-Package>
+            <Import-Package>!</Import-Package>
+            <Private-Package>!</Private-Package>
+          </instructions>
+        </configuration>
+        <executions>
+          <execution>
+            <id>generate-manifest</id>
+            <phase>process-classes</phase>
+            <goals>
+              <goal>manifest</goal>
+            </goals>
+          </execution>
+        </executions>
+      </plugin>
+      
+      <!-- Unpack the jar -->
+      <plugin>
+        <artifactId>maven-dependency-plugin</artifactId>
+        <executions>
+          <execution>
+            <id>unpack-apache-directory-studio-plugin</id>
+            <phase>generate-resources</phase>
+            <goals>
+              <goal>unpack</goal>
+            </goals>
+            <configuration>
+              <overWrite>true</overWrite>
+              <outputDirectory>src/main/resources</outputDirectory>
+              <artifactItems>
+                <artifactItem>
+                  <groupId>commons-codec</groupId>
+                  <artifactId>commons-codec</artifactId>
+                  <excludes>META-INF/**</excludes>
+                </artifactItem>
+              </artifactItems>
+            </configuration>
+          </execution>
+        </executions>
+      </plugin>
+      <!-- No tests to run -->
+      <plugin>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <configuration>
+          <skip>true</skip>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  
+</project>

Modified: directory/studio/trunk/pom.xml
URL: http://svn.apache.org/viewvc/directory/studio/trunk/pom.xml?rev=982679&r1=982678&r2=982679&view=diff
==============================================================================
--- directory/studio/trunk/pom.xml (original)
+++ directory/studio/trunk/pom.xml Thu Aug  5 16:27:33 2010
@@ -67,6 +67,8 @@
     <distMgmtSiteUrl>scpexe://people.apache.org/www/directory.apache.org/studio/gen-docs/${version}</distMgmtSiteUrl>
     
     <!-- Set versions for depending projects -->
+    <org.apache.commons.codec.version>1.3</org.apache.commons.codec.version>
+    <org.apache.commons.collections.version>3.2</org.apache.commons.collections.version>
     <org.apache.directory.shared.version>0.9.17</org.apache.directory.shared.version>
     <org.apache.mina.core.version>2.0.0-M6</org.apache.mina.core.version>
     <skin.version>1.0.1</skin.version>
@@ -77,6 +79,8 @@
     <module>repository</module>
     <!-- Other modules are sorted in alphabetical order -->
     <module>org.apache.mina.core</module>
+    <module>org.apache.commons.codec</module>
+    <module>org.apache.commons.collections</module>
     <module>aciitemeditor</module>
     <module>apacheds</module>
     <module>apacheds-launcher</module>
@@ -1125,12 +1129,12 @@
       <dependency>
         <groupId>commons-codec</groupId>
         <artifactId>commons-codec</artifactId>
-        <version>1.3</version>
+        <version>${org.apache.commons.codec.version}</version>
       </dependency>
       <dependency>
         <groupId>commons-collections</groupId>
         <artifactId>commons-collections</artifactId>
-        <version>3.2</version>
+        <version>${org.apache.commons.collections.version}</version>
       </dependency>
       <dependency>
         <groupId>org.apache.httpcomponents</groupId>



Re: svn commit: r982679 - in /directory/studio/trunk: ./ org.apache.commons.codec/ org.apache.commons.collections/

Posted by Felix Knecht <fe...@apache.org>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Pierre-Arnaud

> Indeed, you're right, there's probably something we could do with the studio-plugin. :)

This would be nice.

> I will first try to have all the needed plugins working with a '.classpath' stored in SVN and see if the app still works with the removal of the 'jars' plugin.

+1, that's the way to go.

> Then, I'll (try to) modify the studio-plugin to update the '.classpath' file accordingly (I might need your help ;) ).

Just drop a note and I'll do my very best :-)

Regards
Felix
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkxfxzwACgkQ2lZVCB08qHHr2wCgpHgSpFmXZnkY+wV0jn0ym+Xu
WxsAnR9O0eWiVDKX/QucxEc7CTEZhq/f
=H89C
-----END PGP SIGNATURE-----

Re: svn commit: r982679 - in /directory/studio/trunk: ./ org.apache.commons.codec/ org.apache.commons.collections/

Posted by Pierre-Arnaud Marcelot <pa...@marcelot.net>.
Hi Felix,

Indeed, you're right, there's probably something we could do with the studio-plugin. :)

I think we would need to add additional parameters for the purpose of these specific plugins (jar libraries rebrandred as eclipse plugins).

Basically, the '.classpath' file needs to be updated and this line:
<classpathentry excluding="**/*.java" path="src/main/resources" kind="src"/>
has to be replaced by this one:
<classpathentry kind="lib" path="src/main/resources" exported="true"/>

Notice that the 'kind' is different (from 'src' to 'lib') and that the classes need to be 'exported'.

A list of 'libClasspathEntries' will probably need to be added to the configuration of the studio-plugin.

I will first try to have all the needed plugins working with a '.classpath' stored in SVN and see if the app still works with the removal of the 'jars' plugin.
Then, I'll (try to) modify the studio-plugin to update the '.classpath' file accordingly (I might need your help ;) ).

Thanks,
Pierre-Arnaud

On 5 août 2010, at 22:34, Felix Knecht wrote:

> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
>> At the moment, the only solution I found is to keep the .classpath and
>> .project files in SVN and don't generate them with Maven.
>> This plugin need something special in their .classpath that I can't
>> generate with Maven to be able to be run in Eclipse.
> 
> IIRC these files (.classpath and .project) are both create/adapted by
> the studio-plugin when running mvn studio:eclipse. So if needed we
> should be able to adapt the studio-plugin?
> 
> Regards
> Felix
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2.0.16 (GNU/Linux)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> 
> iEYEARECAAYFAkxbIE8ACgkQ2lZVCB08qHEa3ACg7RvxACLZs13b5Jmj+s0D9PEA
> oWcAoMryDGh4JmHc/favkq4swuMDB3rV
> =Q1nO
> -----END PGP SIGNATURE-----


Re: svn commit: r982679 - in /directory/studio/trunk: ./ org.apache.commons.codec/ org.apache.commons.collections/

Posted by Felix Knecht <fe...@apache.org>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


> At the moment, the only solution I found is to keep the .classpath and
> .project files in SVN and don't generate them with Maven.
> This plugin need something special in their .classpath that I can't
> generate with Maven to be able to be run in Eclipse.

IIRC these files (.classpath and .project) are both create/adapted by
the studio-plugin when running mvn studio:eclipse. So if needed we
should be able to adapt the studio-plugin?

Regards
Felix
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.16 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkxbIE8ACgkQ2lZVCB08qHEa3ACg7RvxACLZs13b5Jmj+s0D9PEA
oWcAoMryDGh4JmHc/favkq4swuMDB3rV
=Q1nO
-----END PGP SIGNATURE-----

Re: svn commit: r982679 - in /directory/studio/trunk: ./ org.apache.commons.codec/ org.apache.commons.collections/

Posted by Pierre-Arnaud Marcelot <pa...@gmail.com>.
Hi Stefan,

Exactly, i'm running an experiment.

It seems to work great with the test I run with LDAP Servers plugin
and the Mina Core library rebranded as a plugin.

It was not easy to have the libraries rebranded as plugins working in
both Eclipse and Maven jar modes.
At the moment, the only solution I found is to keep the .classpath and
.project files in SVN and don't generate them with Maven.
This plugin need something special in their .classpath that I can't
generate with Maven to be able to be run in Eclipse.

Do you think it is a viable solution ?

Regards
PA

On 5 août 2010, at 21:59, Stefan Seelmann <se...@apache.org> wrote:

>> Author: pamarcelot
>> Date: Thu Aug  5 16:27:33 2010
>> New Revision: 982679
>>
>> URL: http://svn.apache.org/viewvc?rev=982679&view=rev
>> Log:
>> Addded two new plugins for 'org.apache.commons.codec' and 'org.apache.commons.collections'.
>
> Great. I guess you add those plugins so we can get rid of the "jars" plugin?
>
> Kind Regards,
> Stefan

Re: svn commit: r982679 - in /directory/studio/trunk: ./ org.apache.commons.codec/ org.apache.commons.collections/

Posted by Stefan Seelmann <se...@apache.org>.
> Author: pamarcelot
> Date: Thu Aug  5 16:27:33 2010
> New Revision: 982679
>
> URL: http://svn.apache.org/viewvc?rev=982679&view=rev
> Log:
> Addded two new plugins for 'org.apache.commons.codec' and 'org.apache.commons.collections'.

Great. I guess you add those plugins so we can get rid of the "jars" plugin?

Kind Regards,
Stefan