gpt4 book ai didi

java - 无法在 ant javascript 中导入类

转载 作者:行者123 更新时间:2023-12-01 15:14:22 26 4
gpt4 key购买 nike

我正在 ant 中编写内联 JavaScript。该脚本将扫描目录并输出相对于给定时间戳不是最新的文件的名称。

<script language="javascript"> <![CDATA[

importPackage(Packages.java.lang);
importPackage(Packages.org.apache.commons.io.FileUtils);
importClass(Packages.java.io.File);
importClass(Packages.java.util.Iterator);


var path = "D:\DirectoryToScan\";
var timeToCompare = buildServers.getProperty("buildStartTime");

var invocationTime = new Date(timeToCompare );
invocationTime = invocationTime.getTime();

var directoryToSearch = new File(path );
//CODE BREAKS HERE. NONE OF THE SUBSEQUENT LINES EXECUTE
var fileIterator = FileUtils.iterateFiles(directoryToSearch, new String[]{"pdf","html"} , true);


//iterate through files and directories in builtDocs folder and return false if any of the files is older than invocation time
while (fileIterator.hasNext()) {
var doc = fileIterator.next();
if ((!FileUtils.isFileNewer(doc, invocationTime))) {
return false;
}
}
]]> </script>

我注意到对 FileUtils 的第一次调用中断了。我还尝试使用一些简单的类,但它们无法访问,并且看起来 import 语句不适用于自定义类或属于此处显然无法访问的包(例如 apache.tools.ant.util.FileUtils)。

在访问类之前,我需要在这里做一些事情来正确加载它们吗?

最佳答案

如果您尝试使用的类不在 Ant 自己的 lib 目录中,那么您需要为脚本指定一个类路径:

<path id="script.classpath">
<fileset dir="lib" includes="**/*.jar"/>
</path>

<script language="javascript" classpathref="script.classpath">
...

关于java - 无法在 ant javascript 中导入类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11840945/

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