#38 Maven artifact of binary distribution

closed
Uri Schneider
General (20)
7
2006-03-18
2006-01-18
Turadg Aleahmad
No

I have a project that depends on Mantaray and I manage
the build with Maven. I've been looking for a Maven
artifact that I can include in the POM as a dependency,
but can't find one anywhere. Is there one?

It would really help if there was. In the meantime, my
workaround is to set up a small group repository and
host the JAR there.

Discussion

  • Amir Shevat
    Amir Shevat
    2006-01-22

    • assigned_to: nobody --> urish31
    • priority: 5 --> 7
     
  • Uri Schneider
    Uri Schneider
    2006-01-26

    • status: open --> closed
     
  • Logged In: YES
    user_id=137402

    Great, I'm glad to see this. When I ran with it I got the
    following error:

    required artifacts missing:
    commons-logging:commons-loggins:jar:1.0.4
    javax.jms:jms:jar:1.1
    javax.management:jmx_remote:jar:1.0.1_03

    The first is due to a typo in the artifactId, "commons-loggins".

    The other two are because of the dependency on Sun JARs.
    This is the correct idiom as specified here,

    http://maven.apache.org/guides/mini/guide-coping-with-sun-jars.html

    But you might consider using the Geronimo implementations
    instead, which have an open license. Replacing the Sun
    one's with these dependencies has worked for me:

    <dependency>
    <groupId>geronimo-spec</groupId>
    <artifactId>geronimo-spec-j2ee-management</artifactId>
    <version>1.0-rc4</version>
    <type>jar</type>
    </dependency>
    <dependency>
    <groupId>geronimo-spec</groupId>
    <artifactId>geronimo-spec-jms</artifactId>
    <version>1.1-rc4</version>
    <type>jar</type>
    </dependency>

    I would submit these edits as a patch to the POM, but I
    can't find it in the CVS. Is it there?

     
    • status: closed --> open
     
  • Logged In: YES
    user_id=137402

    Oh, and it would be handy to have the sources packaged
    along. The Maven 2.0 plugin for Eclipse grabs those and
    attachs them to the JAR so the programmer can set
    breakpoints within the library code.

    It's as simple as adding this block:
    <build>
    <plugins>
    <plugin>
    <artifactId>maven-source-plugin</artifactId>
    <executions>
    <execution>
    <id>attach-sources</id>
    <goals>
    <goal>jar</goal>
    </goals>
    </execution>
    </executions>
    <inherited>true</inherited>
    </plugin>
    </plugins>
    </build>

     
    • summary: Maven artifiact of binary distribution --> Maven artifact of binary distribution
     
  • Logged In: YES
    user_id=137402

    I took the POM from ibiblio and put it on my own repository
    to fix the commons-logging typo. Then my project built
    okay. But when I tried to run it, there was a
    ClassNotFoundException for javax.management.StandardMBean

    It looks like Mantaray depends on JMX RI too:
    http://cvs.sourceforge.net/viewcvs.py/mantaray/mantaray/ext/jmxri.jar?rev=1.1&view=log

    I don't see a standard dependency declaration on Maven's
    "guide to 3rd party jars" page, so I made this one up:
    <dependency>
    <groupId>javax.management</groupId>
    <artifactId>jmx</artifactId>
    <version>1.2.1</version>
    </dependency>

    And then my app ran fine.

     
  • Uri Schneider
    Uri Schneider
    2006-01-31

    Logged In: YES
    user_id=1073167

    - fixed the typo in the commons-logging dependency.
    - we will not add Geronimo dependencies as this
    configuration was never tested. sorry.
    - added the dependency for jmx.

    We are not using Maven in-house, so I'm not sure how to
    package the sources. Should they be inside the JAR along
    with the classes? In a separate JAR? please advise.

     
  • Logged In: YES
    user_id=137402

    Hi. To generate the sources is as simple as adding a plugin
    to the pom.xml which will take care of it all.

    See my 2006-01-27 16:15 comment for the XML to enable the
    plugin.

     
  • Uri Schneider
    Uri Schneider
    2006-02-12

    Logged In: YES
    user_id=1073167

    Hello again,

    I might have not explained myself adequately: we are not
    using Maven for our internal builds. The binary
    distribution which was uploaded to
    http://www.ibiblio.org/maven2/ was created by me, by hand.
    So, if the sources are to included with the distribution, I
    would have to know where and how to put them myself, not
    using a Maven plugin. Please advise.

     
  • Uri Schneider
    Uri Schneider
    2006-02-12

    • status: open --> pending
     
    • status: pending --> closed
     
  • Logged In: YES
    user_id=1312539

    This Tracker item was closed automatically by the system. It was
    previously set to a Pending status, and the original submitter
    did not respond within 14 days (the time period specified by
    the administrator of this Tracker).

     
  • Logged In: YES
    user_id=137402

    I don't know how to make the SOURCES artifact except by
    asking Maven 2.x to do it.

    Would it be possible to build artifacts using a Maven POM?
    It would work beside your current build system without
    imposing on it. I could write the POM if you like.

     
    • status: closed --> pending
     
  • Logged In: YES
    user_id=1312539

    This Tracker item was closed automatically by the system. It was
    previously set to a Pending status, and the original submitter
    did not respond within 14 days (the time period specified by
    the administrator of this Tracker).

     
    • status: pending --> closed