gpt4 book ai didi

javascript - 带有嵌入式 javascript 的 Ant 脚本试图读取文件

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:55:46 28 4
gpt4 key购买 nike

我有以下 ant 构建目标:

<target name="analyze">
<script language="javascript">
<![CDATA[
importPackage(java.lang);
var path = project.getProperty("PROJECT_HOME") + "/oms";
System.out.println("path = " +path);
]]>
]]>
</script>
</target>

我想以递归方式查找目录中的所有文件,如果它们以 .java 结尾,则将它们打印出来。这可能吗?

最佳答案

Ant中有一个例子script task docs基本上就是这样做的。这是一个简化版本:

<script language="javascript">
<![CDATA[
importClass(java.io.File);

fs = project.createDataType("fileset");
dir = "src";
fs.setDir( new File( dir ) );
fs.setIncludes( "**/*.java" );

// create echo Task via Ant API
echo = project.createTask("echo");

// iterate over files found.
srcFiles = fs.getDirectoryScanner( project ).getIncludedFiles( );
for ( i = 0; i < srcFiles.length; i++ ) {
var filename = srcFiles[i];

// use echo Task via Ant API
echo.setMessage( filename );
echo.perform( );
}]]>
</script>

这使用 Ant FileSet找到文件。此处在文件集上设置了包含规则,以便迭代器仅返回找到的 .java 文件 - 使用文件名上的字符串操作保存以丢弃任何其他文件。

如果您需要设置排除规则,您可以通过 FileSet 类(实际上是 AbstractFileset 类)的 setExcludes() 方法来实现。查看docs for patterns进一步了解 Ant 通配符。

关于javascript - 带有嵌入式 javascript 的 Ant 脚本试图读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6528851/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com