Author: ludovicc-guest Date: 2012-01-08 23:48:49 +0000 (Sun, 08 Jan 2012) New Revision: 15668
Added: trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/ trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/1.0-beta-3.0.7/ trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/1.0-beta-3.0.7/plexus-component-metadata-1.0-beta-3.0.7.jar trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/1.0-beta-3.0.7/plexus-component-metadata-1.0-beta-3.0.7.pom Modified: trunk/maven-debian-helper/bin/mh_make trunk/maven-debian-helper/debian/changelog trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/DependenciesSolver.java trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/GenerateDebianFilesMojo.java trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build-classpath.vm trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.properties.ant.vm trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.xml.vm trunk/maven-debian-helper/maven-packager-utils/src/main/resources/rules.ant.vm Log: Generate package-doc.poms for Ant builds Modified: trunk/maven-debian-helper/bin/mh_make =================================================================== --- trunk/maven-debian-helper/bin/mh_make 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/bin/mh_make 2012-01-08 23:48:49 UTC (rev 15668) @@ -172,10 +172,10 @@ # Restore state after a brutal stop if [ -f debian/$BIN_PACKAGE.poms ]; then - mh_unpatchpoms -p$BIN_PACKAGE + mh_unpatchpoms -p$BIN_PACKAGE || true fi if [ -f debian/patches/series ]; then - quilt pop -a + quilt pop -a || true fi # Apply existing quilt patchs as source 3(quilt) is used in the package Modified: trunk/maven-debian-helper/debian/changelog =================================================================== --- trunk/maven-debian-helper/debian/changelog 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/debian/changelog 2012-01-08 23:48:49 UTC (rev 15668) @@ -12,6 +12,7 @@ * Fix failing tests in DependenciesSolverTest * Run unit tests during the build, * d/control: add B-D on libcommons-io-java as it's used by the junit tests. + * Generate package-doc.poms for Ant builds [ Damien Raude-Morvan ] * maven-packager-utils/src/main/resources/build.xml.vm: package-module ant Modified: trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/DependenciesSolver.java =================================================================== --- trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/DependenciesSolver.java 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/DependenciesSolver.java 2012-01-08 23:48:49 UTC (rev 15668) @@ -26,16 +26,7 @@ import java.io.InputStream; import java.io.InputStreamReader; import java.io.LineNumberReader; -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Iterator; -import java.util.List; -import java.util.Map; -import java.util.Properties; -import java.util.Set; -import java.util.StringTokenizer; -import java.util.TreeSet; +import java.util.*; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.ThreadFactory; @@ -89,6 +80,9 @@ private static final String[][] PLUGINS_THAT_CAN_BE_IGNORED = { {"org.apache.maven.plugins", "maven-ant-plugin"}, {"org.apache.maven.plugins", "maven-assembly-plugin"}, + {"org.apache.maven.plugins", "maven-enforcer-plugin"}, + {"org.apache.maven.plugins", "maven-gpg-plugin"}, + {"org.apache.rat", "apache-rat-plugin"}, {"org.codehaus.mojo", "buildnumber-maven-plugin"}, {"org.apache.maven.plugins", "maven-verifier-plugin"}, {"org.codehaus.mojo", "findbugs-maven-plugin"}, @@ -499,10 +493,36 @@ public void setOutputDirectory(File outputDirectory) { this.outputDirectory = outputDirectory; - pomTransformer.getRules().setRulesFile(new File(outputDirectory, "maven.rules")); - pomTransformer.getIgnoreRules().setRulesFile(new File(outputDirectory, "maven.ignoreRules")); - pomTransformer.getPublishedRules().setRulesFile(new File(outputDirectory, "maven.publishedRules")); - cleanIgnoreRules.setRulesFile(new File(outputDirectory, "maven.cleanIgnoreRules")); + File rulesFile = new File(outputDirectory, "maven.rules"); + if (rulesFile.exists() && verbose) { + System.out.println("Use existing rules:"); + } + pomTransformer.getRules().setRulesFile(rulesFile); + + File ignoreRulesFile = new File(outputDirectory, "maven.ignoreRules"); + if (ignoreRulesFile.exists() && verbose) { + System.out.println(); + System.out.println("Use existing ignore rules:"); + } + pomTransformer.getIgnoreRules().setRulesFile(ignoreRulesFile); + + File publishedRulesFile = new File(outputDirectory, "maven.publishedRules"); + if (publishedRulesFile.exists() && verbose) { + System.out.println(); + System.out.println("Use existing published rules:"); + } + pomTransformer.getPublishedRules().setRulesFile(publishedRulesFile); + + File cleanIgnoreRules = new File(outputDirectory, "maven.cleanIgnoreRules"); + if (cleanIgnoreRules.exists() && verbose) { + System.out.println(); + System.out.println("Use existing clean ignore rules:"); + } + this.cleanIgnoreRules.setRulesFile(cleanIgnoreRules); + + if (verbose) { + System.out.println(); + } } public String getPackageName() { @@ -737,7 +757,11 @@ String dependencyRule = pom.getThisPom().getGroupId() + " " + pom.getThisPom().getArtifactId() + " " + pom.getThisPom().getType() + " " + selectedRule.toString(); pomTransformer.getRules().add(new DependencyRule(dependencyRule)); + POMInfo transformedPom = pom.newPOMFromRules(pomTransformer.getRules().getRules(), getRepository()); + getRepository().registerPom(projectPom, transformedPom); + projectPoms.add(transformedPom.getThisPom()); + if ("bundle".equals(pom.getThisPom().getType())) { System.out.println(pom.getThisPom().getGroupId() + ":" + pom.getThisPom().getArtifactId() + " is a bundle."); @@ -1119,10 +1143,36 @@ System.out.println("[error] Please check manually that the library is up to date, otherwise it may be necessary to package version " + dependency.getVersion() + " in Debian."); } else { - System.out.println("[warning] Please install the missing dependency with this command:"); + System.out.println("[warning] Please install the missing dependency. Run the following command in another terminal:"); System.out.println(" sudo apt-get install " + pkg); } } + if (interactive && pkg == null) { + pkg = searchPkg(new File("/usr/share/java/" + dependency.getArtifactId() + ".jar")); + if (pkg != null) { + System.out.println("[error] Package " + pkg + " does not contain Maven dependency " + dependency + " but there seem to be a match"); + System.out.println("If the package contains already Maven artifacts but the names don't match, try to enter a substitution rule"); + System.out.println("of the form s/groupId/newGroupId/ s/artifactId/newArtifactId/ jar s/version/newVersion/ here:"); + System.out.print("> "); + String newRule = readLine().trim(); + if (!newRule.isEmpty()) { + DependencyRule userRule = new DependencyRule(newRule); + pomTransformer.getRules().add(userRule); + System.out.println("Please suggest the maintainer of package " + pkg + " to add this rule to debian/maven.publishedRules"); + return resolveDependency(dependency.applyRules(Arrays.asList(userRule)), sourcePom, buildTime, mavenExtension, management); + } + } else { + System.out.println("[error] Cannot resolve Maven dependency " + dependency + ". If you know a package that contains a compatible dependency,"); + System.out.println("Try to enter a substitution rule of the form s/groupId/newGroupId/ s/artifactId/newArtifactId/ jar s/version/newVersion/ here:"); + System.out.print("> "); + String newRule = readLine().trim(); + if (!newRule.isEmpty()) { + DependencyRule userRule = new DependencyRule(newRule); + pomTransformer.getRules().add(userRule); + return resolveDependency(dependency.applyRules(Arrays.asList(userRule)), sourcePom, buildTime, mavenExtension, management); + } + } + } if (interactive) { System.out.println("Try again to resolve the dependency?"); System.out.print("[y]/n > "); @@ -1199,6 +1249,7 @@ if (verbose) { System.out.println("Dependency " + dependency + " found in package " + pkg); System.out.println("[ok]"); + System.out.println(); } if (resolvingParent) { @@ -1475,6 +1526,8 @@ String arg = args[i].trim(); if ("--verbose".equals(arg) || "-v".equals(arg)) { verbose = true; + } else if ("--debug".equals(arg)) { + log.setLevel(Level.FINEST); } else if (arg.startsWith("-p")) { debianPackage = arg.substring(2); } else if (arg.startsWith("--package=")) { Modified: trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/GenerateDebianFilesMojo.java =================================================================== --- trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/GenerateDebianFilesMojo.java 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/maven-packager-utils/src/main/java/org/debian/maven/packager/GenerateDebianFilesMojo.java 2012-01-08 23:48:49 UTC (rev 15668) @@ -159,7 +159,7 @@ context.put("packager", packager); context.put("packagerEmail", email); context.put("project", project); - context.put("collectedProjects", collectedProjects); + context.put("collectedProjects", wrapMavenProjects(collectedProjects)); context.put("runTests", Boolean.valueOf(runTests)); context.put("generateJavadoc", Boolean.valueOf(generateJavadoc)); @@ -336,12 +336,19 @@ if ("ant".equals(packageType)) { ListOfPOMs listOfPOMs = new ListOfPOMs(new File(outputDirectory, binPackageName + ".poms")); - setupArtifactLocation(listOfPOMs, project); + ListOfPOMs listOfJavadocPOMs = null; + if (generateJavadoc && "ant".equals(packageType)) { + listOfJavadocPOMs = new ListOfPOMs(new File(outputDirectory, binPackageName + "-doc.poms")); + } + setupArtifactLocation(listOfPOMs, listOfJavadocPOMs, project); for (Iterator i = collectedProjects.iterator(); i.hasNext();) { MavenProject mavenProject = (MavenProject) i.next(); - setupArtifactLocation(listOfPOMs, mavenProject); + setupArtifactLocation(listOfPOMs, listOfJavadocPOMs, mavenProject); } listOfPOMs.save(); + if (listOfJavadocPOMs != null) { + listOfJavadocPOMs.save(); + } } String projectVersion = project.getVersion(); @@ -434,7 +441,6 @@ containsJars = true; } } - generateFile(context, "build.xml.vm", outputDirectory, "build.xml"); } else if (!project.getPackaging().equals("pom")) { if (project.getPackaging().equals("maven-plugin")) { containsPlugins = true; @@ -444,6 +450,10 @@ } context.put("containsJars", Boolean.valueOf(containsJars)); context.put("containsPlugins", Boolean.valueOf(containsPlugins)); + + if (project.getPackaging().equals("pom") && project.getModules().size() > 0) { + generateFile(context, "build.xml.vm", outputDirectory, "build.xml"); + } generateFile(context, "build.properties.ant.vm", outputDirectory, "build.properties"); generateFile(context, "build-classpath.vm", outputDirectory, "build-classpath"); } else { @@ -458,12 +468,17 @@ } } - private void setupArtifactLocation(ListOfPOMs listOfPOMs, MavenProject mavenProject) { - String basedir = project.getBasedir().getAbsolutePath(); - String dirRelPath = ""; - if (! mavenProject.getBasedir().equals(project.getBasedir())) { - dirRelPath = mavenProject.getBasedir().getAbsolutePath().substring(basedir.length() + 1) + "/"; + private List wrapMavenProjects(List<MavenProject> projects) { + List<WrappedProject> wrappedProjects = new ArrayList<WrappedProject>(); + for (MavenProject aProject: projects) { + wrappedProjects.add(new WrappedProject(this.project, aProject)); } + return wrappedProjects; + } + + private void setupArtifactLocation(ListOfPOMs listOfPOMs, ListOfPOMs listOfJavadocPOMs, MavenProject mavenProject) { + String dirRelPath = new WrappedProject(project, mavenProject).getBaseDir(); + if (! "pom".equals(mavenProject.getPackaging())) { String pomFile = dirRelPath + "pom.xml"; listOfPOMs.getOrCreatePOMOptions(pomFile).setJavaLib(true); @@ -481,14 +496,14 @@ ListOfPOMs.POMOptions pomOptions = listOfPOMs.getOrCreatePOMOptions(pomFile); pomOptions.setArtifact(dirRelPath + "target/" + mavenProject.getArtifactId() + "-*." + extension); - if ("jar".equals(extension) && generateJavadoc && "ant".equals(packageType)) { + if ("jar".equals(extension) && generateJavadoc && "ant".equals(packageType) && listOfJavadocPOMs != null) { String artifactId = mavenProject.getArtifact().getArtifactId(); String docPom = dirRelPath + "target/" + artifactId + ".javadoc.pom"; - listOfPOMs.getOrCreatePOMOptions(docPom).setIgnorePOM(true); - listOfPOMs.getOrCreatePOMOptions(docPom).setArtifact(dirRelPath + "target/" + artifactId + ".javadoc.jar"); - listOfPOMs.getOrCreatePOMOptions(docPom).setClassifier("javadoc"); - listOfPOMs.getOrCreatePOMOptions(docPom).setHasPackageVersion(pomOptions.getHasPackageVersion()); - listOfPOMs.getOrCreatePOMOptions(docPom).setDestPackage(packageName + "-doc"); + ListOfPOMs.POMOptions javadocPomOptions = listOfJavadocPOMs.getOrCreatePOMOptions(docPom); + javadocPomOptions.setIgnorePOM(true); + javadocPomOptions.setArtifact(dirRelPath + "target/" + artifactId + ".javadoc.jar"); + javadocPomOptions.setClassifier("javadoc"); + javadocPomOptions.setHasPackageVersion(pomOptions.getHasPackageVersion()); } pomOptions.setJavaLib(true); if (mavenProject.getArtifactId().matches(packageName + "\\d")) { @@ -623,7 +638,7 @@ library = library.substring(0, library.indexOf("(")).trim(); } System.out.println(); - System.out.println("Look for shared jars in the package..."); + System.out.println("Looking for shared jars in package " + library + "..."); DependenciesSolver.executeProcess(new String[]{"/usr/bin/dpkg", "--listfiles", library}, new DependenciesSolver.OutputHandler() { @@ -666,6 +681,41 @@ DependenciesSolver.executeProcess(new String[]{"chmod", "+x", file}, new DependenciesSolver.NoOutputHandler()); } + public static class WrappedProject { + private final MavenProject baseProject; + private final MavenProject mavenProject; + + public WrappedProject(MavenProject baseProject, MavenProject mavenProject) { + this.baseProject = baseProject; + this.mavenProject = mavenProject; + } + + public String getBaseDir() { + String basedir = baseProject.getBasedir().getAbsolutePath(); + String dirRelPath = ""; + if (! mavenProject.getBasedir().equals(baseProject.getBasedir())) { + dirRelPath = mavenProject.getBasedir().getAbsolutePath().substring(basedir.length() + 1) + "/"; + } + return dirRelPath; + } + + public String getArtifactId() { + return mavenProject.getArtifactId(); + } + + public String getGroupId() { + return mavenProject.getGroupId(); + } + + public String getVersion() { + return mavenProject.getVersion(); + } + + public String getPackaging() { + return mavenProject.getPackaging(); + } + } + static class LicenseCheckResult implements DependenciesSolver.OutputHandler { private Set licenses = new TreeSet(); Modified: trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build-classpath.vm =================================================================== --- trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build-classpath.vm 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build-classpath.vm 2012-01-08 23:48:49 UTC (rev 15668) @@ -1,4 +1 @@ /usr/share/java/ant-nodeps.jar -#foreach ($jar in $buildjars) -/usr/share/java/${jar}.jar -#end Modified: trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.properties.ant.vm =================================================================== --- trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.properties.ant.vm 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.properties.ant.vm 2012-01-08 23:48:49 UTC (rev 15668) @@ -6,3 +6,14 @@ #if(!$runTests) maven.test.skip=true #end +classpath.compile=\ +#foreach ($jar in $buildJars) + /usr/share/java/${jar}.jar:\ +#end +#set( $D = '$' ) +#foreach ($module in $collectedProjects) +#if($module.packaging != "pom") + ${D}{basedir}/${module.baseDir}target/${module.artifactId}-${D}{version}.jar:\ +#end +#end + target/classes Modified: trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.xml.vm =================================================================== --- trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.xml.vm 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/maven-packager-utils/src/main/resources/build.xml.vm 2012-01-08 23:48:49 UTC (rev 15668) @@ -45,7 +45,7 @@ <target name="clean"> <clean-module dir=""/> #foreach ($module in $collectedProjects) - <clean-module dir="${module.artifactId}"/> + <clean-module dir="${module.baseDir}"/> #end </target> @@ -53,9 +53,9 @@ <package-module dir=""/> #foreach ($module in $collectedProjects) #if ($module.packaging == "maven-plugin") - <package-plugin-module dir="${module.artifactId}"/> + <package-plugin-module dir="${module.baseDir}"/> #else - <package-module dir="${module.artifactId}"/> + <package-module dir="${module.baseDir}"/> #end #end </target> @@ -64,8 +64,10 @@ <target name="javadoc"> <javadoc destdir="${javadoc.dir}"> #foreach ($module in $collectedProjects) - <packageset dir="${module.artifactId}/src/main/java/"/> +#if ($module.packaging != "pom") + <packageset dir="${module.baseDir}src/main/java/"/> #end +#end </javadoc> </target> Modified: trunk/maven-debian-helper/maven-packager-utils/src/main/resources/rules.ant.vm =================================================================== --- trunk/maven-debian-helper/maven-packager-utils/src/main/resources/rules.ant.vm 2012-01-08 23:31:44 UTC (rev 15667) +++ trunk/maven-debian-helper/maven-packager-utils/src/main/resources/rules.ant.vm 2012-01-08 23:48:49 UTC (rev 15668) @@ -9,7 +9,7 @@ #if ($project.packaging == "pom" && $project.modules.size() > 0) export ANT_ARGS=-Dbasedir=$(realpath .) -Dpackage=$(DEB_SOURCE_PACKAGE) -f debian/build.xml #else -export ANT_ARGS=-Dbasedir=$(realpath .) -Dpackage=$(DEB_SOURCE_PACKAGE) -f /usr/share/maven-ant-helper/maven-build.xml +export ANT_ARGS=-Dbasedir=$(realpath .) -Dpackage=$(DEB_SOURCE_PACKAGE) -Dversion=$(DEB_UPSTREAM_VERSION) -f /usr/share/maven-ant-helper/maven-build.xml #end #end Added: trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/1.0-beta-3.0.7/plexus-component-metadata-1.0-beta-3.0.7.jar =================================================================== Added: trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/1.0-beta-3.0.7/plexus-component-metadata-1.0-beta-3.0.7.pom =================================================================== --- trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/1.0-beta-3.0.7/plexus-component-metadata-1.0-beta-3.0.7.pom (rev 0) +++ trunk/maven-debian-helper/maven-packager-utils/src/test/resources/repository/org/codehaus/plexus/plexus-component-metadata/1.0-beta-3.0.7/plexus-component-metadata-1.0-beta-3.0.7.pom 2012-01-08 23:48:49 UTC (rev 15668) @@ -0,0 +1,79 @@ +<?xml version='1.0' encoding='UTF-8'?> +<!-- $Id: pom.xml 8185 2009-05-13 15:28:46Z jvanzyl $ --> +<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> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-metadata</artifactId> + <version>1.0-beta-3.0.7</version> + <packaging>maven-plugin</packaging> + <parent> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-containers</artifactId> + <version>debian</version> + </parent> + <properties> + <debian.asm.asm.originalVersion>3.1</debian.asm.asm.originalVersion> + <debian.commons-cli.commons-cli.originalVersion>1.0</debian.commons-cli.commons-cli.originalVersion> + <debian.org.codehaus.plexus.plexus-cli.originalVersion>1.2</debian.org.codehaus.plexus.plexus-cli.originalVersion> + <debian.originalVersion>1.0-beta-3.0.7</debian.originalVersion> + <debian.package>libplexus-component-metadata-java</debian.package> + </properties> + + <name>Plexus :: Component Metadata</name> + <description>A Maven plugin to generate Plexus descriptors from source tags and class annotations.</description> + <dependencies> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-container-default</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-component-annotations</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-utils</artifactId> + </dependency> + <!-- + NOTE: When QDox 1.7 is fuly cooked should update this and consider using it to provide source-level annotation + processing (plexus-cdc-anno). But right now its way to buggy. <dependency> + <groupId>com.thoughtworks.qdox</groupId> <artifactId>qdox</artifactId> <version>1.7-SNAPSHOT</version> + </dependency> + --> + <dependency> + <groupId>com.thoughtworks.qdox</groupId> + <artifactId>qdox</artifactId> + </dependency> + <dependency> + <groupId>org.jdom</groupId> + <artifactId>jdom</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-plugin-api</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-model</artifactId> + </dependency> + <dependency> + <groupId>org.apache.maven</groupId> + <artifactId>maven-project</artifactId> + </dependency> + <dependency> + <groupId>org.codehaus.plexus</groupId> + <artifactId>plexus-cli</artifactId> + <version>debian</version> + </dependency> + <dependency> + <groupId>commons-cli</groupId> + <artifactId>commons-cli</artifactId> + <version>debian</version> + </dependency> + <dependency> + <groupId>asm</groupId> + <artifactId>asm</artifactId> + <version>3.x</version> + </dependency> + </dependencies> +</project> \ No newline at end of file _______________________________________________ pkg-java-commits mailing list pkg-java-comm...@lists.alioth.debian.org http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits