通过 maven pom 在“类路径”末尾的 java 清单中添加自定义字符串.xml

Adding custom string in java manifest at the end of 'Classpath' via maven pom.xml

提问人:vcima 提问时间:12/18/2016 最后编辑:vcima 更新时间:12/18/2016 访问量:314

问:

我正在尝试更新清单文件,在类路径中添加一对新行。

我的绒球里有这样的东西:

<plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-jar-plugin</artifactId>
                        <configuration>
                            <archive>
                                <manifest>
                                    <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                                    <addClasspath>true</addClasspath>
                                </manifest>
                                <manifestEntries>
                                    <Class-Path>./ttttttttttttttt/</Class-Path>
                                </manifestEntries>
                            </archive>
                        </configuration>
                    </plugin>

此更改的结果是下一个:

Manifest-Version: 1.0
Implementation-Title: server
Implementation-Version: 0.1.0-SNAPSHOT
Archiver-Version: Plexus Archiver
Built-By: vcima
Implementation-Vendor-Id: es.solution.ok
Class-Path: **../ttttttttttttttt/** configuration-0.1.0-SNAPSHOT.jar 
 tip-0.1.0-SNAPSHOT.jar quartz-2.2.1.jar c3p0-0.9.1.1.jar quartz-
 jobs-2.2.1.jar 
company: My company
Created-By: Apache Maven 3.3.3
Build-Jdk: 1.8.0_111
Main-Class: es.example.srv.ServerRunner

这是对的,但我需要在类路径的末尾添加新行,原因有几个:在这种情况下,库的顺序很重要......

我正在寻找这样的解决方法:

Manifest-Version: 1.0
    Implementation-Title: server
    Implementation-Version: 0.1.0-SNAPSHOT
    Archiver-Version: Plexus Archiver
    Built-By: vcima
    Implementation-Vendor-Id: es.solution.ok
    Class-Path: configuration-0.1.0-SNAPSHOT.jar 
     tip-0.1.0-SNAPSHOT.jar quartz-2.2.1.jar c3p0-0.9.1.1.jar quartz-
     jobs-2.2.1.jar **../ttttttttttttttt/** 
    company: My company
    Created-By: Apache Maven 3.3.3
    Build-Jdk: 1.8.0_111
    Main-Class: es.example.srv.ServerRunner

谁能帮我?

此致敬意!

Maven pom.xml meta-inf

评论

0赞 Daniel 12/18/2016
为什么订单对你很重要?Maven 将按照您在 POM 中声明的顺序列出您的类路径依赖项。你不能简单地将你需要的依赖项放在POM部分的末尾吗?<dependencies>
0赞 vcima 12/18/2016
因为如果我在项目中必须引用的这些外部依赖项在开始时声明,可能会影响我的库的行为,这就是原因。
0赞 vcima 12/18/2016
我需要清单中这些外部库的引用,但我不想在我的项目中使用我的 jar 的外部库......如果你知道用绒球实现这一点的方法对我来说会很棒,但我不知道是否真的可能。
0赞 Daniel 12/18/2016
我不确定是否有可能.我尝试了不同的组合,但只有在您有一个单一依赖项的情况下才能让它工作。maven-jar-plugin<customClasspathLayout><classpathLayoutType>custom</classpathLayoutType>
0赞 vcima 12/18/2016
您知道 pom 内部依赖项的 <scope> 参数中是否有任何选项可以达到此结果:在清单中引用但不存储库?

答: 暂无答案