Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven 3.3.1-禁用时间戳_Java_Maven_Timestamp_Version_Pom.xml - Fatal编程技术网

Java Maven 3.3.1-禁用时间戳

Java Maven 3.3.1-禁用时间戳,java,maven,timestamp,version,pom.xml,Java,Maven,Timestamp,Version,Pom.xml,我已经读到,版本设置不再执行,在Maven 3或更高版本中被忽略,如下所述:。根据设计,Maven 3或更高版本将始终生成带有时间戳的快照版本 但是,当我构建工件时,我有一些工件只生成基本快照版本,即使我多次构建它,也会出现这种情况 在构建一些工件之后,在我的本地存储库中,将有我构建的基本工件快照文件,以及同一工件的一些其他时间戳版本。有一个基本工件:artifactID-4.0.1.0-SNAPSHOT.jar,然后在同一目录中有其他工件,并附加了版本:例如artifact-4.0.1.0-S

我已经读到,
版本设置不再执行,在Maven 3或更高版本中被忽略,如下所述:。根据设计,Maven 3或更高版本将始终生成带有时间戳的快照版本

但是,当我构建工件时,我有一些工件只生成基本快照版本,即使我多次构建它,也会出现这种情况

在构建一些工件之后,在我的本地存储库中,将有我构建的基本工件快照文件,以及同一工件的一些其他时间戳版本。有一个基本工件:artifactID-4.0.1.0-SNAPSHOT.jar,然后在同一目录中有其他工件,并附加了版本:例如artifact-4.0.1.0-SNAPSHOT-20160120.192041-37.jar

我不希望构建时间戳文件并将其放入我的存储库,因为它只会占用磁盘空间。我想知道如何只生成基本的4.0.1.0快照版本,而不生成其他版本


除了编写脚本来删除这些累积的时间戳工件外,是否有人想出了完全禁用它们的方法,以便它们不会在Maven 3或更高版本中创建?

参考另一个问卷页面:

您要求做的是更改Maven/Nexus的默认行为。它根据附加的时间戳和序列号跟踪“最新”的内容。您只需指定“快照”,它将解析最新的快照(注意:默认情况下,远程的本地更新只在@daily检查,除非指定了-U。如果您想清除远程(Nexus)repo,您可以安排一项任务“从存储库中删除快照”。您可以每小时或更长时间安排一次(通过高级/cron).它需要时间戳和顺序#来知道要删除额外副本(按时间或数量)要走多远

其他明智的做法是尝试使用uniqueVersion=false


请参阅另一个问卷页面:

您要做的是更改Maven/Nexus的默认行为。它根据附加的时间戳和序列号跟踪“最新”的内容。您只需指定“快照”,它就会解析最新的内容(注意:除非指定了-U,否则默认情况下,远程的本地更新仅在@daily进行检查。如果要清除远程(Nexus)repo,您可以安排任务“从存储库中删除快照”。您可以每小时或更长时间安排一次(通过高级/cron).它需要时间戳和顺序#来知道要删除额外副本(按时间或数量)要走多远

其他明智的做法是尝试使用uniqueVersion=false


时间戳工件是什么意思?提交到本地存储库的actifacts?生成后创建的文件的名称?只有快照版本才会有时间戳。您能确认这是区别吗?在哪里可以找到带有时间戳的工件?只有在Nexus/artifacts这样的存储库管理器中正在创建这些类型的工件,Nexus中有一个定期清理快照存储库的计划任务…?@Tunaki-是的,它仅适用于快照版本。我是否可以将其设置为每次覆盖4.0.1.0-SNAPSHOT,以便永远不会创建任何时间戳版本。@JFPicard-是的,我是referri当您构建存储库中已经存在的工件时,在4.0.1.0-SNAPSHOT目录中生成的带时间戳的工件。带时间戳的工件是什么意思?提交到本地存储库的actifacts?生成后创建的文件的名称?快照版本将有时间戳仅限sion。您能确认这是区别吗?在哪里可以找到带有时间戳的工件?只有在存储库管理器(如Nexus/artifacts)中,才会创建此类工件,并且Nexus中存在定期清理快照存储库的计划任务…?@Tunaki-是的,这仅适用于快照版本。我是否可以使它每次都覆盖4.0.1.0-SNAPSHOT,这样就永远不会创建任何时间戳版本。@JFPicard-是的,我指的是在构建存储库中已经存在的工件时,在4.0.1.0-SNAPSHOT目录中生成的时间戳工件。
mvn deploy:deploy-file -Durl=file:///C:/m2-repo \
                       -DrepositoryId=some.id \
                       -Dfile=your-artifact-1.0.jar \
                       -DpomFile=your-pom.xml \
                       -DuniqueVersion=false