maven-jar-plugin不会生成MANIFEST

时间:2014-06-19 12:34:36

标签: java maven-3 manifest.mf

我无法使用maven生成MANIFEST文件... 我尝试了一切,但我没有找到解决方案。 jar文件生成正确,但缺少清单。

这是我的pom.xml的一部分:

    <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>2.4</version>
            <configuration>
                <useDefaultManifestFile> true </useDefaultManifestFile>
                <!-- archive> <manifest> <mainClass>net.menago.core.main.Menago</mainClass> 
                    </manifest> 
                </archive -->
                <!-- archive>
                    <index>true</index>
                    <manifest>
                        <addClasspath>true</addClasspath>
                    </manifest>
                    <manifestEntries>
                        <mode>development</mode>
                        <url>${project.url}</url>
                        <key>value</key>
                    </manifestEntries>
                </archive-->
            </configuration>
        </plugin>

正如您所看到的,有些注释代码也不起作用。 我已经尝试过mvn clean install,compile,package ......

感谢您的任何建议!

3 个答案:

答案 0 :(得分:0)

检查您的包装元素是否设置了值包

<packaging>bundle</packaging>

答案 1 :(得分:-1)

可能会有效

<configuration> 
                    <archive> 
                      <manifest> <mainClass>net.menago.core.main.Menago</mainClass>                                  
                        <index>true</index>                  
                            <addClasspath>true</addClasspath>                   
                        <manifestEntries>
                            <mode>development</mode>
                            <url>${project.url}</url>
                            <key>value</key>
                        </manifestEntries>
                      </manifest>
                    </archive>
      </configuration>

答案 2 :(得分:-1)

很明显,由于评论,您的粘贴细分不起作用,因此我假设您已经发布了显示您尝试使用的内容。

<manifestEntries>的正确用法如下:

      <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
                <archive>
                    <manifestEntries>
                        <yourKey>your value</yourKey>
                    </manifestEntries>
                </archive>
            </configuration>
      </plugin>

这与您同时使用<useDefaultManifestFile>会产生标准输出不一致。