问题标签 [fileset]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ant - 使用 ant 动态更新文件集
我想根据选定的 java 模块动态创建一个 jar 文件这是执行此操作的 ant 脚本的一部分。
<property name="modules.selected" value="A,C,F" />
<for list="${modules.selected}" param="module">
<sequential>
<echo>Module chosen ${basedir}/@{module}/src</echo>
<copy todir="${build.dir.src}" overwrite="true">
<fileset dir="${basedir}/@{module}/src">
<include name="**/*.${src.valid.exts}" />
</fileset>
</copy>
</sequential>
</for>
在上面的脚本中,我选择了一个模块,然后构建一个目录并将目录中存在的所有模块复制到一个位置(build/src)。
但是我真的不喜欢上面提到的逻辑,想更改为在 a 中包含所有必需的模块fileset
并使用填充的fileset
来复制。
这是我正在寻找的逻辑
<fileset id="required-modules" dir="${basedir}/@{module}/src">
<for list="${modules.selected}" param="module">
<sequential>
<echo>Module chosen ${basedir}/@{module}/src</echo>
<include name="**/*.${src.valid.exts}" />
</sequential>
</for>
</fileset>
<copy todir="${build.dir.src}" overwrite="true">
<fileset refid="required-modules" />
</copy>
任何人都可以更新上述脚本以使其工作。
nant - 如何检测是否定义了文件集?
我的自定义 NAnt 任务依赖于某个文件集。它被认为是由任务执行的时间定义的。我想确保在使用之前定义文件集。我在想类似的东西property::exists('property')
。
我没有找到合适的功能。开箱即用NAnt(或NAntContrib )是否可行?
ant - 通过 refid 创建 zip 文件时出错
我正在尝试创建 2 个 zip 文件作为 ant 任务的一部分。两者相似,但其中包含一些额外的数据。因此,为了减少代码,我想定义一个文件集并引用它。唯一的问题是会产生错误。
任务:
任务运行时:
我已经验证该文件存在。删除自述文件只会使错误发生在不同的文件上。此外,如果我只是将 zipfileset 复制并粘贴到 2 个单独的标签中,一切正常。但我宁愿不那样做。
编辑:2011 年 10 月 14 日编译的 Apache Ant(TM) 版本 1.8.2,Mac OS X 10.7。其他平台没试过。
ant - 将 .class 文件添加到 ant 类路径以进行 groovc ant 任务编译?
我在 Eclipse 中有一个名为MyApp的项目。我有另一个名为TestRepository的项目,其中包含为 MyApp 项目编写的测试用例。
我正在尝试编译测试用例并使用类路径为的 groovyc ant 任务生成 junit 报告:
MyApp 的 jar 文件被添加到类路径中。如果在测试用例中引用的 MyApp 项目的类在 lib 文件夹的 jars 中不存在,我希望 groovyc 搜索MyApp/bin
包中的类。
我怎样才能做到这一点?
PS:MyApp 项目非常庞大,我不想让 groovyc 任务编译 MyApp 中的所有 src 文件,而只是从 bin 中获取额外的 .class 文件并将其放在其类路径中。
java - DirectoryScanner:使用 ant 文件集的 getExcludedFiles 性能问题
有没有办法加快 getExcludedFiles() 的性能?我一直在玩文件集模式,但没有得到任何改进。
这是我的情况:
我有一个用这些模式定义的文件集:
下basedir/normal
,还有大约一百个其他子目录,但我只对 abc 感兴趣。但是,当我调用 时DirectoryScanner.getExcludedFiles()
,我认为它调用了 slowScanner() 并且显然它必须扫描所有其他子目录,这导致了 24 小时的周转。任何帮助将不胜感激。
提前致谢,
ant - Ant,从远程机器下载文件集
正如我读过的那样,当通过 scp 任务从远程机器下载文件时,ant 不提供 'fileset' 属性。从本地机器发送文件时它可以工作,但在远程机器上启动时它不起作用。那是来自文档。因此,在远程机器中,我在每个目录中都有一些文件夹和文件加载。我想从每个文件夹中下载所有文件夹和一个指定文件。下载所有文件然后删除不需要的文件将不是解决方案,因为有数千个文件。
所以。如何从远程机器的指定目录下载所有文件夹(仅在磁盘上创建没有内容的文件夹),然后从远程机器的每个目录下载一个指定的文件并使用ant将其放到相应的文件夹中?
phing - FileSet 中的文件顺序 (phing)
是否可以按特定顺序(例如 0-9 后跟 AZ)从 phing FileSet 获取文件?现在它以完全随机的顺序获取我的编号文件。
ant - 为什么 ANT 在创建文件集后更新它的内容,我可以覆盖它吗?
我认为这可能是一个例子最容易解释的,所以这里是:
输出:
我理想地想要的是让文件集保持不变,这样我就可以有一个之前/之后的设置(为了使用 来获得一个改变的集合<difference>
,所以如果你知道一种直接跳到那个的方法......)。
我尝试过使用<filelist>
,但我无法在<difference>
任务中正确填充和比较它(它们也很难调试,因为我似乎无法输出它们的内容)。我也尝试使用<modified/>
来选择文件集中的文件,但它似乎根本不起作用,并且总是什么都不返回。
即使有另一种方法,我也希望能更好地理解 ANT 在上面的示例中所做的事情以及原因。
ant - 如何在 Ant 中重用多个 zipfileset 元素?
我们想要构建多个 zip 文件,其中一些文件的内容与其他文件相同。而不是为每个 zip 指定完整的文件列表(它们实际上非常大),我想我会尝试得到一些重用。
所以我尝试使用<union>
这个:
这确实会生成两个包含“1”和“2”的 zip 文件,但两个文件中都缺少“3”前缀。
我究竟做错了什么?
我们还有一个在内部使用 zipfileset 的自定义任务。我也试图让它与 union 一起工作,但不知道如何获得前缀值。
if-statement - 根据条件包含蚂蚁修改的选择器
我正在修改我现有的 ant 脚本以支持差异构建。为此,我在文件集中使用了修改后的选择器来仅查找修改过的文件。但问题是当我进行完整构建时,我需要绕过基于某些属性或参数的修改过滤器。如下所示。有没有办法做到这一点。
如果我使用 target 调用上面的 ant 脚本,那么dt
我需要考虑in任务。如果它是使用调用的,那么我只需要在任务中考虑。modified
exclude
fileset
dt2
exclude
fileset
我无法使用上述脚本,因为fileset
不支持嵌套if
任务。这就是为什么我正在寻找替代方法来做到这一点。请提出一些方法来做到这一点。
PS:我不想创建具有相同复制任务的两个目标,一个包含modified
和exclude
in fileset
,另一个目标仅包含exclude
.