我正在将我的项目部署到要使用java Web Start部署的Web服务器。但是,Web Start使用修改日期来确定是否再次下载资源(默认情况下)。
我想要的是一种只部署那些尚不存在的(jar)文件的方法。这可以通过在我的所有罐子上都有构建版本号来实现,因此2个同名的罐子具有相同的内容。
注意:
答案 0 :(得分:14)
如果您正在使用蚂蚁复制任务(您没有明确说出自己),您可以尝试present
选择器:http://ant.apache.org/manual/Types/selectors.html#presentselect。
<copy todir="target">
<fileset dir="src">
<present targetdir="target" present="srconly" />
</fileset>
</copy>
答案 1 :(得分:2)
您可以尝试将granularity
attribute设置得非常非常高,基本上禁用“如果源文件比目标更新,则复制具有相同名称的文件”功能。
答案 2 :(得分:0)
我们遇到了类似的问题,我最终实现了自己的jar任务来完成我需要的工作。 Ant源代码是一个很好的起点;如果你很幸运,你可能只能继承Ant的jar任务。它听起来并不像听起来那么困难,而且比我尝试或考虑过的六种解决方法要简单得多。
答案 3 :(得分:0)
我们用maven和JavaFX and WebStart Plugin解决了这个问题,它将maven布局和版本保留在JNLP中,使用“非唯一”SNAPSHOT将保持相同的jar(忽略时间戳)。
我知道这是maven对你不好,但是有人可以尝试一下吗?