[ 
http://jira.codehaus.org/browse/MGROOVY-180?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jason Dillon updated MGROOVY-180:
---------------------------------

    Fix Version/s: 1.0-rc-5

> Artifact name for "gmaven-runtime-1.x" causes exception when running Jar 
> under specific conditions.
> ---------------------------------------------------------------------------------------------------
>
>                 Key: MGROOVY-180
>                 URL: http://jira.codehaus.org/browse/MGROOVY-180
>             Project: GMaven
>          Issue Type: Bug
>          Components: tools
>    Affects Versions: 1.0-rc-3
>         Environment: -
>            Reporter: Jason Smith
>            Assignee: Jason Dillon
>             Fix For: 1.0-rc-5
>
>
> > I have the following plugin definition for defining a MANIFEST in my
> > JAR file.
> >
> > Note that <addExtensions/> is "true".
> >            <plugin>
> >                <groupId>org.apache.maven.plugins</groupId>
> >                <artifactId>maven-jar-plugin</artifactId>
> >                <configuration>
> >                    <archive>
> >                        <index>true</index>
> >                        <manifest>
> >
> > <mainClass>com.infotrustgroup.util.commandline.Main</mainClass>
> >
> > <packageName>com.infotrustgroup.buildtools</packageName>
> >                            <addClasspath>true</addClasspath>
> >                            <addExtensions>true</addExtensions>
> >                        </manifest>
> >                        <manifestEntries>
> >                            <mode>development</mode>
> >                            <url>${pom.url}</url>
> >                            <key>value</key>
> >                        </manifestEntries>
> >                    </archive>
> >                </configuration>
> >            </plugin>
> >
> > This adds entries for all the extension libraries into the JAR file,
> > like this:
> >    ...
> >    joda-time-Extension-Name: joda-time
> >    joda-time-Implementation-Version: 1.5.2
> >    gmaven-runtime-1.5-Extension-Name: gmaven-runtime-1.5
> >    gmaven-runtime-1.5-Implementation-Version: 1.0-rc-3
> >    slf4j-api-Extension-Name: slf4j-api
> >    slf4j-api-Implementation-Version: 1.5.0
> >    gmaven-feature-support-Extension-Name: gmaven-feature-support
> >    gmaven-feature-support-Implementation-Version: 1.0-rc-3
> >    gmaven-feature-api-Extension-Name: gmaven-feature-api
> >    ...
> >
> > Now when I run Java with -jar, like this:
> >    java -jar "%~dp0\lib\BuildTools-1.0.6-SNAPSHOT.jar" "%~f0"
> > com.infotrustgroup.buildtools.commands.Build %*
> >
> > I get the following exception:
> >    Exception in thread "main" java.io.IOException: invalid header
> > field name: gmaven-runtime-1.5-Extension-Name
> >        at java.util.jar.Attributes.read(Attributes.java:416)
> >        at java.util.jar.Manifest.read(Manifest.java:182)
> >        at java.util.jar.Manifest.<init>(Manifest.java:52)
> >        at
> > java.util.jar.JarFile.getManifestFromReference(JarFile.java:160)
> >        at java.util.jar.JarFile.getManifest(JarFile.java:146)
> >
> > I believe this is happening because of the dot ('.', or period) in the 
> > name. If I use
> > gmaven-runtime-default, this does not happen.  If set <addExtensions/
> > > to "false", it also does not happen.  So this is fairly easy to
> > work around, but it is also pretty difficult to troubleshoot unless
> > you know where to look.
> >
> > Note that the code in the stack trace isn't mine.  This is happening
> > in Java, before my code ever gets called.
> >
> > This one is pretty hard to produce at random, though it is
> > repeatable.  You have to be running compiled Groovy from within a
> > JAR where you have set up the MANIFEST with extensions on.
> >
> > One suggestion would be to call the artifact gmaven-runtime and set
> > the version to 1.5, 1.6, whatever - the version of Groovy, plus
> > maybe a point version and RC status.  That would work, and it would
> > not break the Java jarring mechanism.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to