[opensuse-factory] Java:* repo cleanup
Hello people, I am going to clean up the mess we have in Java namespace by removing all the experimental subprojects which were not updated. As most of this will just delete packages that fail to build or are broken one way or other it should be no biggie, but still scream now if you think it will ruin your mojo :-) The current setup: base Base Java platform for SUSE base:maven2 base:scratch Scratch esmska Packages for esmska Factory Devel project of Java packages for openSUSE:Factory jpackage-1.7 JPackage 1.7 packages jpackage-5.0 Jpackage 5.0 jpackage-5.0:bootstrap jpackage-5.0 bootstrap jpackage-6.0 Jpackage 6.0 development jpackage-6.0:bootstrap jpackage-6.0 bootstrap packages Factory Java packages packages:maven Maven testing playground After cleanup: esmska Packages for esmska Factory Devel project of Java packages for openSUSE:Factory packages Factory Java packages packages:maven Maven testing playground I will do this removal next monday unless I get decent reason why I should not as I already announced this once beforehand. Cheers Tom
Hi, Am 05.01.2015 um 14:38 schrieb Tomáš Chvátal:
I am going to clean up the mess we have in Java namespace by removing all the experimental subprojects which were not updated.
As most of this will just delete packages that fail to build or are broken one way or other it should be no biggie, but still scream now if you think it will ruin your mojo :-)
The current setup: base Base Java platform for SUSE base:maven2 base:scratch Scratch esmska Packages for esmska Factory Devel project of Java packages for openSUSE:Factory jpackage-1.7 JPackage 1.7 packages jpackage-5.0 Jpackage 5.0 jpackage-5.0:bootstrap jpackage-5.0 bootstrap jpackage-6.0 Jpackage 6.0 development jpackage-6.0:bootstrap jpackage-6.0 bootstrap packages Factory Java packages packages:maven Maven testing playground
After cleanup: esmska Packages for esmska Factory Devel project of Java packages for openSUSE:Factory packages Factory Java packages packages:maven Maven testing playground
I will do this removal next monday unless I get decent reason why I should not as I already announced this once beforehand.
Great to see someone tackle this mess. I tried cleaning up Maven packaging as prereq for Hadoop in December and have some pending changes for XML Commons that I need to review and submit... My hacks: https://build.opensuse.org/project/show/home:a_faerber:hadoop I had noticed that in Java:base Duncan has some patches tweaking Maven for OBS usage whereas the one in yet another location https://build.opensuse.org/package/show/devel:tools:building/maven was just a repackaging of binaries, which didn't work for building anything I tried but is a newer version (despite still not the latest). Sadly I found our OpenJDK 1.8 to spit stack overflow errors on aarch64, whereas OpenJDK 1.7 worked okay on 13.2, both using the ZeroVM backend. https://build.opensuse.org/package/show/home:a_faerber:arm/hadoop My naive attempts to enable the JIT for aarch64 failed: https://build.opensuse.org/package/show/home:a_faerber:arm/java-1_8_0-openjd... Cheers, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg)
On Tue, Jan 6, 2015 at 11:36 PM, Andreas Färber <afaerber@suse.de> wrote:
I had noticed that in Java:base Duncan has some patches tweaking Maven for OBS usage whereas the one in yet another location https://build.opensuse.org/package/show/devel:tools:building/maven was just a repackaging of binaries, which didn't work for building anything I tried but is a newer version (despite still not the latest).
https://build.opensuse.org/request/show/281405 brings in the latest version for Maven. Would be interesting to find out how this fails when you try building with it. Robert -- http://robert.muntea.nu/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Am 15.01.2015 um 14:43 schrieb Robert Munteanu:
On Tue, Jan 6, 2015 at 11:36 PM, Andreas Färber <afaerber@suse.de> wrote:
I had noticed that in Java:base Duncan has some patches tweaking Maven for OBS usage whereas the one in yet another location https://build.opensuse.org/package/show/devel:tools:building/maven was just a repackaging of binaries, which didn't work for building anything I tried but is a newer version (despite still not the latest).
https://build.opensuse.org/request/show/281405 brings in the latest version for Maven. Would be interesting to find out how this fails when you try building with it.
https://build.opensuse.org/package/live_build_log/home:a_faerber:hadoop/hado... You're not applying any patch, so according to my earlier tests, Maven will still be trying to download stuff from the Internet, which is prohibited in OBS. Instead, Maven needs to reuse packages in whatever minor version installed by zypper before attempting to access the net. Regards, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Thu, Jan 15, 2015 at 6:19 PM, Andreas Färber <afaerber@suse.de> wrote:
Am 15.01.2015 um 14:43 schrieb Robert Munteanu:
On Tue, Jan 6, 2015 at 11:36 PM, Andreas Färber <afaerber@suse.de> wrote:
I had noticed that in Java:base Duncan has some patches tweaking Maven for OBS usage whereas the one in yet another location https://build.opensuse.org/package/show/devel:tools:building/maven was just a repackaging of binaries, which didn't work for building anything I tried but is a newer version (despite still not the latest).
https://build.opensuse.org/request/show/281405 brings in the latest version for Maven. Would be interesting to find out how this fails when you try building with it.
https://build.opensuse.org/package/live_build_log/home:a_faerber:hadoop/hado...
You're not applying any patch, so according to my earlier tests, Maven will still be trying to download stuff from the Internet, which is prohibited in OBS. Instead, Maven needs to reuse packages in whatever minor version installed by zypper before attempting to access the net.
I have a better understanding of Maven than of RPM packaging, so bear with me a little while I try to understand the issue. Maven looks by default for RPMs and associated metadata ( pom.xml files ) under the current users $HOME/.m2/repository . If it does not find them, it attempts to downloads them from the configured Maven repositories ( Maven Central by default ). What we want to achieve is to have Maven consider installed RPMs when looking for artifacts. IIUC this requires two things: 1. Installed RPM packages contain both .jar and pom.xml files . 2. Files installed by RPM packages are consumed by Maven. The most straightforward that that I can imagine ( again, with my Maven user's hat on is ) a. Include pom.xml in the RPM packages b. Create a Maven-compatible structure from the installed RPMs ( can be a symlink tree somewhere under /usr or /var ) c. Point Maven to that repository when building. The most straightforward way is to use a %maven macro which expands to mvn --setings /some/special/setttings.xml , which configures Maven to look for our RPM -based repository. Note that for none of these require any patches to the main Maven package. Robert
Regards, Andreas
-- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg)
-- http://robert.muntea.nu/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On 01/15/2015 05:31 PM, Robert Munteanu wrote:
Note that for none of these require any patches to the main Maven package.
If you want to know more about this topic, I wrote a post some years ago: http://duncan.mac-vicar.com/2012/01/26/on-java-maven-jpp-and-rpm/ (We never got to implement what was in the plan with xmvn) You can summarize it as: https://twitter.com/dmacvicar/status/347956354582974464 -- Duncan Mac-Vicar P. - http://www.suse.com/ SUSE LINUX GmbH, GF: Jeff Hawn, Jennifer Guild, Felix Imendörffer, HRB 21284 (AG Nürnberg) Maxfeldstraße 5, 90409 Nürnberg, Germany -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Hi Duncan et al., Am 19.01.2015 um 11:06 schrieb Duncan Mac-Vicar P.:
On 01/15/2015 05:31 PM, Robert Munteanu wrote:
Note that for none of these require any patches to the main Maven package.
If you want to know more about this topic, I wrote a post some years ago:
http://duncan.mac-vicar.com/2012/01/26/on-java-maven-jpp-and-rpm/
Thanks for that background.
(We never got to implement what was in the plan with xmvn)
Bruno sent around an email asking for packaging workshop proposals for oSC in May - would any of you be interested in hosting a workshop or hackathon session there to explore any of these approaches? Cheers, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Mon, Jan 19, 2015 at 12:06 PM, Duncan Mac-Vicar P. <dmacvicar@suse.de> wrote:
On 01/15/2015 05:31 PM, Robert Munteanu wrote:
Note that for none of these require any patches to the main Maven package.
If you want to know more about this topic, I wrote a post some years ago:
http://duncan.mac-vicar.com/2012/01/26/on-java-maven-jpp-and-rpm/
(We never got to implement what was in the plan with xmvn)
A 'little' more complicated than what I originally thought :-) Robert -- http://robert.muntea.nu/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Am 06.01.2015 um 22:36 schrieb Andreas Färber:
Hi,
Am 05.01.2015 um 14:38 schrieb Tomáš Chvátal:
I am going to clean up the mess we have in Java namespace by removing all the experimental subprojects which were not updated.
As most of this will just delete packages that fail to build or are broken one way or other it should be no biggie, but still scream now if you think it will ruin your mojo :-)
The current setup: base Base Java platform for SUSE base:maven2 base:scratch Scratch esmska Packages for esmska Factory Devel project of Java packages for openSUSE:Factory jpackage-1.7 JPackage 1.7 packages jpackage-5.0 Jpackage 5.0 jpackage-5.0:bootstrap jpackage-5.0 bootstrap jpackage-6.0 Jpackage 6.0 development jpackage-6.0:bootstrap jpackage-6.0 bootstrap packages Factory Java packages packages:maven Maven testing playground
After cleanup: esmska Packages for esmska Factory Devel project of Java packages for openSUSE:Factory packages Factory Java packages packages:maven Maven testing playground
I will do this removal next monday unless I get decent reason why I should not as I already announced this once beforehand.
Great to see someone tackle this mess.
I tried cleaning up Maven packaging as prereq for Hadoop in December and have some pending changes for XML Commons that I need to review and submit...
Two months later finally got to that: https://build.opensuse.org/request/show/289557 I vaguely recall there being a newer 1.3.x version than we had (and I didn't check since December whether there might be a newer 1.4.x version, too), and I'm not sure how to tell whether additional jars/subpackages beyond jaxp might be needed. But I'm hoping the update is sane enough for you guys to pick up and build upon, as I don't really have time to investigate this further at the moment. Cheers, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Am 05.03.2015 um 16:56 schrieb Andreas Färber:
Am 06.01.2015 um 22:36 schrieb Andreas Färber:
I tried cleaning up Maven packaging as prereq for Hadoop in December and have some pending changes for XML Commons that I need to review and submit...
Two months later finally got to that:
With xml-commons* slowly trickling through Java:packages, I notice that all my unfinished maven changes were not actually checked into OBS. ;) I've rebased from 3.2.3 to 3.2.5, with similar results: [ 95s] + ant maven-assembly -Dmaven.home=/home/abuild/rpmbuild/BUILDROOT/maven-3.2.5-5.1.x86_64/usr/share/java/maven -Dskip.pull=1 [ 95s] Buildfile: /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml [ 96s] [ 96s] initTaskDefs: [ 96s] [echo] Building Apache Maven ... [ 97s] [ 97s] isMavenHomeSet: [ 97s] [ 97s] init: [ 97s] [echo] maven.home = /home/abuild/rpmbuild/BUILDROOT/maven-3.2.5-5.1.x86_64/usr/share/java/maven [ 97s] [echo] maven.repo.local = /home/abuild/.m2/repository [ 97s] [echo] distributionId = apache-maven [ 97s] [echo] distributionName = Apache Maven [ 97s] [echo] distributionDirectory = apache-maven [ 97s] [ 97s] pull: [ 97s] [ 97s] generate-sources: [ 97s] [mkdir] Created dir: /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/bootstrap/target [ 97s] [mkdir] Created dir: /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/bootstrap/target/generated-sources [ 97s] [modello] Generating sources for maven-model/src/main/mdo/maven.mdo [ 97s] [ 97s] BUILD FAILED [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:207: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:202: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:192: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:167: Reference modello.pathid not found. https://build.opensuse.org/package/live_build_log/home:a_faerber:hadoop/mave... I'm guessing that's where the plugin dependencies are starting to make trouble? Regards, Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Thu, Mar 5, 2015 at 9:06 PM, Andreas Färber <afaerber@suse.de> wrote:
[ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:207: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:202: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:192: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:167: Reference modello.pathid not found.
I can't make heads or tails of this ( but my knowledge of Ant is rusty ). Maybe ask on the Maven mailing list? I think the ant-based bootstrap in the offline variant doesn't get much testing these days. Robert -- http://robert.muntea.nu/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Am 05.03.2015 um 23:01 schrieb Robert Munteanu:
On Thu, Mar 5, 2015 at 9:06 PM, Andreas Färber <afaerber@suse.de> wrote:
[ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:207: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:202: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:192: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:167: Reference modello.pathid not found.
I can't make heads or tails of this ( but my knowledge of Ant is rusty ). Maybe ask on the Maven mailing list? I think the ant-based bootstrap in the offline variant doesn't get much testing these days.
My interpretation was that because I'm skipping the pull step, we need to manually prepare the dependencies somehow, somewhere... Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
On Fri, Mar 6, 2015 at 12:03 AM, Andreas Färber <afaerber@suse.de> wrote:
Am 05.03.2015 um 23:01 schrieb Robert Munteanu:
On Thu, Mar 5, 2015 at 9:06 PM, Andreas Färber <afaerber@suse.de> wrote:
[ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:207: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:202: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:192: The following error occurred while executing this line: [ 97s] /home/abuild/rpmbuild/BUILD/apache-maven-3.2.5/build.xml:167: Reference modello.pathid not found.
I can't make heads or tails of this ( but my knowledge of Ant is rusty ). Maybe ask on the Maven mailing list? I think the ant-based bootstrap in the offline variant doesn't get much testing these days.
My interpretation was that because I'm skipping the pull step, we need to manually prepare the dependencies somehow, somewhere...
That is true, we need to mirror what the pull target does [1], minimally populating the local repository but also setting some classpath references like the modello.pathid. Running the build without skip.pull results in _a lot_ or artifacts being pulled in $ find ../repo.local/ -name \*jar | wc -l 302 Some of these are differ just in version , e.g. ../repo.local/commons-lang/commons-lang/2.6/commons-lang-2.6.jar ../repo.local/commons-lang/commons-lang/2.3/commons-lang-2.3.jar ../repo.local/commons-lang/commons-lang/1.0/commons-lang-1.0.jar ../repo.local/commons-lang/commons-lang/2.5/commons-lang-2.5.jar ../repo.local/commons-lang/commons-lang/2.4/commons-lang-2.4.jar ../repo.local/commons-lang/commons-lang/2.1/commons-lang-2.1.jar Maybe using a Maven-based bootstrap would be simpler? Just thinking out loud here, not based on facts... Robert [1]: https://github.com/apache/maven/blob/maven-3.2.5/build.xml#L103-L129
Andreas
-- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg)
-- http://robert.muntea.nu/ -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
Am 05.03.2015 um 23:22 schrieb Robert Munteanu:
On Fri, Mar 6, 2015 at 12:03 AM, Andreas Färber <afaerber@suse.de> wrote:
My interpretation was that because I'm skipping the pull step, we need to manually prepare the dependencies somehow, somewhere...
That is true, we need to mirror what the pull target does [1], minimally populating the local repository but also setting some classpath references like the modello.pathid. Running the build without skip.pull results in _a lot_ or artifacts being pulled in
$ find ../repo.local/ -name \*jar | wc -l 302
I've ignored the sheer amount and tar'ed them up, which gets us further. Skipping the pull step does not work (the reported error), but when the dependencies are present in the specified repository it proceeds okay. Next problem is that it's trying to download a license file: [ 278s] [java] [main] ERROR org.apache.maven.cli.MavenCli - Failed to execute goal org.apache.maven.plugins:maven-remote-resources-plugin:1.5:process (default) on project apache-maven: Error rendering velocity resource. Invocation of method 'getResourceAsFile' in class org.codehaus.plexus.resource.DefaultResourceManager threw exception org.codehaus.plexus.resource.loader.ResourceNotFoundException: Could not find resource 'http://www.apache.org/licenses/LICENSE-2.0'. at remote-resources[line 40, column 26] -> [Help 1] https://build.opensuse.org/package/live_build_log/home:a_faerber:hadoop/mave... Andreas -- SUSE Linux GmbH, Maxfeldstr. 5, 90409 Nürnberg, Germany GF: Felix Imendörffer, Jane Smithard, Jennifer Guild, Dilip Upmanyu, Graham Norton; HRB 21284 (AG Nürnberg) -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org
participants (4)
-
Andreas Färber
-
Duncan Mac-Vicar P.
-
Robert Munteanu
-
Tomáš Chvátal