Gentoo Archives: gentoo-java

From: Kasun Gajasinghe <kasunbg@×××××.com>
To: gentoo-soc@l.g.o
Cc: gentoo-java@l.g.o
Subject: [gentoo-java] Gentoo Maven Integration - Weekly Report #6
Date: Thu, 07 Jul 2011 03:07:03
Message-Id: CADg9GQZ=apLfcUd1O++AjkgGvPsobC21MQ0=znoNO02Y0p20PQ@mail.gmail.com
1 Hi all,
2 -----------------Goal-----------------
3 The goal of this project is to be easily able to write ebuilds for
4 upstream projects that use Apache Maven as the build system. The Maven
5 integration allows to natively use Apache Maven in Java packages in
6 the main tree. The current system work around the support for Maven
7 projects by transforming them to Ant. It generates build.xml via “mvn
8 ant:ant” command and sanitizes that. This conversion too has some
9 problems and needs to fixed. With this project, developers gains the
10 ability to use native Maven support for writing ebuilds and will get
11 full support for using maven-to-ant feature.
12
13 -----------------Progress-----------------
14
15 First of all, Good News. I was finally able to build maven and it's
16 hefty 50+ dependencies from source. Now, it emerges successfully, and
17 passed the few tests I did. I have waited a little while before
18 sending this report to ensure that I haven't missed something.
19
20 With this, the milestone for the mid-term is complete. In the next
21 days, I'll be testing the package, and fix the few glitches I find on
22 the way.
23
24 Here's a little description about what I was doing in the last week.
25 Basically, I have bumped apache-maven and it emerges without any
26 issue. At testing I have found two issues; one is dependency conflict,
27 and other is another dependency issue having wrong version.
28
29 First issue, the dependency conflict was due to the conflict of maven
30 deps with the dependencies of the project we are building. Basically,
31 Apache Maven is a build management tool which take of almost
32 everything including dependency downloading and handling. Maven uses a
33 mechanism called shading classes (using maven-shade-plugin) to avoid
34 these conflicts. Since maven-shade-plugin should be built from maven
35 itself, we had to find another alternative. Finally, Jarjar came for
36 the rescue! So, this issue is now fixed.
37 The full discussion that went with Maven upstream developers can be
38 found at http://maven.40175.n5.nabble.com/Gentoo-maven-intg-Intermediary-shaded-source-files-generated-by-maven-shade-plugin-td4546889.html
39
40 Second issue was due to some misconfiguration and wrong dep of
41 maven-remote-resources plugin. It failed with ClassNotFoundException
42 for the class org.codehaus.plexus.velocity.DefaultVelocityComponent
43 which was in the package plexus-velocity.
44 After some rigorous period, found that it was due to doxia version,
45 the which has no particular connection maven-remote-resources plugin!
46 Anyway, the issue is fixed now.
47 Full discussion that went with Maven upstream developers can be found at
48 http://maven.40175.n5.nabble.com/Gentoo-Maven-Intg-plexus-velocity-missing-maven-remote-resources-plugin-fails-with-a-ClassNotFoundExn-td4544174.html
49
50 It's been fun and exciting week!
51
52 Regards,
53 --Kasun
54
55 --
56 ~~~*******'''''''''''''*******~~~
57 Kasun Gajasinghe,
58 University of Moratuwa,
59 Sri Lanka.
60 Blog: http://blog.kasunbg.org
61 Twitter: http://twitter.com/kasunbg