我希望在Manifest.MF的版本末尾有一些没有时间戳的Tycho构建(我试图不使用像"release“和"standard”这样的词,否则人们就会被我正在尝试Tycho不想做的事情所困扰)。
我想我必须要么像这样配置tycho-packaging-plugin:
<profiles>
<profile>
<id>some-special-occurrence</id>
<build>
<plugins>
<plugin>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-packaging-plugin</artifactId>
<configuration>
<format></format><!-- can't figure out what to enter -->
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>也许我可以重新使用tycho-versions-plugin,但是我找不到任何关于如何防止它在版本末尾设置".qualifier“的信息。
有人知道如何删除某些Tycho构建的限定符吗?
发布于 2020-02-05 10:28:14
如本文http://www.lorenzobettini.it/2020/02/remove-snapshot-and-qualifier-in-maven-tycho-builds/所示,您可以使用标准Maven插件和tycho-versions-plugin的组合。
例如,您可以运行
mvn \
build-helper:parse-version org.eclipse.tycho:tycho-versions-plugin:set-version \
-DnewVersion=\${parsedVersion.majorVersion}.\${parsedVersion.minorVersion}.\${parsedVersion.incrementalVersion}或者另一种
mvn \
versions:set -DgenerateBackupPoms=false -DremoveSnapshot=true \
org.eclipse.tycho:tycho-versions-plugin:update-eclipse-metadata第一个方法首先解析当前版本并设置一些属性;使用这些属性,您可以创建与当前版本相对应的版本,跳过-SNAPSHOT,并将其传递给tycho-versions-plugin。
第二个方法将首先从POMs中删除-SNAPSHOT,然后使用tycho-versions-plugin更新Eclipse版本(删除.qualifier)。
更多细节可在上述文章中找到。
发布于 2016-04-27 03:31:42
还不清楚你在问什么。
如果MANIFEST.MF有一个没有限定符的版本号,如
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Bundle
Bundle-SymbolicName: example-bundle;singleton:=true
Bundle-Version: 0.1.0那你就不用做任何事了。也就是说,Tycho将使用给定的包版本( 0.1.0 )生成工件,没有限定符。你不需要弄乱tycho-打包插件。
您是说要在MANIFEST.MF中使用带有限定符的捆绑版本,比如0.1.0限定符,但不希望生成过程中删除限定符?如果这是您想要的,我认为您将不得不提交一个功能请求。
理想情况下,您只需提供一个
<forceContextQualfier></forceContextQualifier> 或者也许
<forceContextQualfier>none</forceContextQualifier> 指示您不希望使用限定符。也就是说,您需要与qualifier=none中的qualifiers.htm产生相同效果的东西:qualifiers.htm。
但是,从https://git.eclipse.org/c/tycho/org.eclipse.tycho.git/tree/tycho-packaging-plugin/src/main/java/org/eclipse/tycho/buildversion/BuildQualifierMojo.java的角度来看,forceContextQualifier似乎被视为一个文字字符串。none值没有特殊处理,空字符串总是被时间戳替换。
格式值必须是有效的SimpleDateFormat。同样,空值被默认值替换,因此无法请求空或空格式。
您的另一个选项是使用设置包的值,并删除限定符。这样,您可以为发行版进行分支,将版本设置为移除限定符,然后生成。或者让建筑在飞行中完成。
但是,我真的认为,如果我们能让tycho打包插件句柄成为一个none forceContextQualifier值,那就更时髦了。
https://stackoverflow.com/questions/32626553
复制相似问题