Tag: ant

如何用ANT重命名n个文件? (批量工作)

如何用ANT重命名1..n文件? 我想将xxxx.default.properties所有文件重命名为xxxx.local.properties 。 谢谢。

Ant脚本:让标记转储整个命令行

我有一个ant构建脚本,其中包含一个相当复杂的命令,其中包含许多标记,我正在尝试进行故障排除。 我想知道在构建它之后是否可以查看整个命令行; 可以在eclipse调试器中,也可以将其转储到文件中。 这是我正在处理的事情: <!– –> 这是我得到的错误: BUILD FAILED C:\dev\workspace\rmsitepi2\build.raytheon.suite.tomcat.xml:50: The following error occurred while executing this line: C:\dev\workspace\rmsitepi2\build.raytheon.flex.xml:33: The following error occurred while executing this line: C:\dev\workspace\rmsitepi2\build.raytheon.flex.xml:159: exec returned: 1

Ant中的Echo目标描述

Compile the File 我想回应目标的描述。 除了复制之外,还有更好的方法吗?

在ant中设置类路径的问题

我在运行Java程序时遇到了问题(它使用了一些第三方JAR)。 我可以编译它很好但是当我在ant中调用我的运行目标时它说它找不到我告诉它在类路径中运行的类。 这是我的build.xml的样子: 有谁知道我可能做错了什么? 这是我从ant的堆栈跟踪: ant run Buildfile: build.xml run: [java] Could not find GuiStarter. Make sure you have it in your classpath [java] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(ExecuteJava.java:138) [java] at org.apache.tools.ant.taskdefs.Java.run(Java.java:764) [java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:218) [java] at org.apache.tools.ant.taskdefs.Java.executeJava(Java.java:132) [java] at org.apache.tools.ant.taskdefs.Java.execute(Java.java:105) [java] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) [java] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) [java] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [java] at java.lang.reflect.Method.invoke(Method.java:616) [java] […]

将Ant构建器集成到Eclipse中:错误“变量引用空选择”

我在Eclipse JDT项目中有一些Ant任务,我想在每次编译之前执行它,所以我在我的Eclipse构建器配置中添加了一个Ant构建器。 作为构建文件的位置,我输入了 ${workspace_loc:${project_path}/build.xml} 我不想在这里有任何绝对路径或项目名称。 Eclipse配置是存储库的一部分,其他用户使用不同的文件系统布局和可能不同的Eclipse项目名称来检查它。 例如,我通常在Eclipse工作区中有几个相同项目的工作副本,每个副本当然都有不同的项目名称。 这大部分时间都有效。 但是,我有时会在对话框中收到以下错误消息: 构建期间发生错误。 项目“MyProjectName”上运行构建器“集成外部工具生成器”的错误。 变量引用空选择:$ {project_path} 变量引用空选择:$ {project_path} 这似乎发生在Eclipse决定构建项目时,而在Package Explorer中没有选择项目的资源。 我可以通过在项目中创建一个虚拟文件,删除Eclipse外部的文件,在Eclipse中选择它并按F5来重现它。 Eclipse将注意到该文件不再存在,将其从Package Explorer中删除(因此不再选择任何内容),然后构建项目,并给出错误消息。 虽然为每个编译运行Ant任务并不是那么重要,但我不希望有这样的错误消息框会让用户感到困惑。 那我该怎么办? 以不同的方式引用build.xml文件,以便问题消失,或者 解决问题,或 抑制此特定错误的错误对话框? 任何帮助,将不胜感激。 我正在使用Eclipse 3.7(Indigo)。

如何通过java程序运行ant命令?

我想通过java程序运行一个简单的ant -v命令。 搜索之后,我知道我必须使用shell执行代替进程,因为ant实际上不是exe格式。 我有一个程序,用于执行简单的JAVAC命令,但ant永远不会工作。 这是我的代码的样子。 Runtime runtime = Runtime.getRuntime() ; Process shellProcess = runtime.exec(“D:\\installs\\apache-ant-1.9.2\\bin\\ant -v”) ; shellProcess.waitFor() ; 当我运行它时,我得到以下exception Exception in thread “main” java.io.IOException: Cannot run program “D:\installs\apache-ant-1.9.2\bin\ant”: CreateProcess error=193, %1 is not a valid Win32 application at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029) at java.lang.Runtime.exec(Runtime.java:615) at java.lang.Runtime.exec(Runtime.java:448) at java.lang.Runtime.exec(Runtime.java:345) at com.check.SystemCheck.main(SystemCheck.java:14) Caused by: java.io.IOException: CreateProcess error=193, %1 is not […]

摆脱无法转换为String的org.eclipse.osgi.internal.framework.EquinoxConfiguration $ 1

我刚刚遇到Apache Ivy bug java.lang.ClassCastException: org.eclipse.osgi.internal.framework.EquinoxConfiguration$1 cannot be cast to java.lang.String在执行Ant任务ivy:config时java.lang.ClassCastException: org.eclipse.osgi.internal.framework.EquinoxConfiguration$1 cannot be cast to java.lang.String ( link ) ivy:config 今天早上我尝试将LibraryFolder ClasspathContainer插件安装到我的Eclipse(STS 3.6.1)中:每次我尝试执行ivy:retrieve时安装它都会导致上述错误。 更糟糕的是,我尝试从Eclipse Marketplace安装IvyDE插件,Eclipse开始崩溃,包括JVM崩溃等多种错误。 卸载这两个插件没有修复。 我尝试了一个新的工作区和一个空白的Eclipse安装,但最终我不得不安装我以前的Eclipse插件。 我花了一整个上午试图修复这个烂摊子,但我不得不恢复以前未提交的工作空间和Eclipse安装,所以现在除了上面的错误之外我还能正常工作。 常春藤一直工作到今天早上。 我的每个Ant任务都运行在与Eclipse相同的JRE中( C:\Program Files\Java\jdk1.7.0_60\jre\bin\server\jvm.dll )因为我使用了很多eclipse.refreshLocal任务。 虽然我可以通过删除/评论eclipse.refreshLocal任务并在标准JRE中运行Ant-Ivy任务来解决问题,但我想问是否有解决方法来摆脱错误,可能是通过删除工作区中的密钥文件元数据。 正如我所读到的,一个Ivy方法被传递一个对象,从它的名字猜测,它是Eclipse配置的一部分。 虽然我将等待修正错误,但我的问题是如何更多地研究这个org.eclipse.osgi.internal.framework.EquinoxConfiguration$1参数的性质?

如何让Ant在javac中使用JAXB 2.2.x而不是Java 6 SE JAXB类?

我正在更新遗留应用程序以使用Java 6 SE而不是Java 5 SE。 该应用程序使用JAXB,在Java 5 SE下,它在类路径上有JAXB参考实现jar。 当我转到Java 6 SE(更新38)时,我遇到了一些问题 (参见链接的Stackoverflow问题 ),我在一些帮助下解决了这个问题 。 因此,导致问题的下一件事是项目Ant构建脚本。 当Ant编译任务执行时,它会获取Java 6 SE附带的JAXB的嵌入式版本,而不是我在类路径中包含的jar版本(JAXB 2.2.6版本)。 我相信Java 6 SE包含JAXB 2.1.x. 这导致编译时错误,如下所示: [javac] location: @interface javax.xml.bind.annotation.XmlElementRef [javac] @XmlElementRef(name = “abbrev”, type = JAXBElement.class, required = false) 在这种情况下,JAXB 2.1.x中的@XmlElementRef不存在’required’属性,但它在2.2.x中存在。 如何更改我的Ant构建脚本,以便从构建类路径中获取JAXB 2.2.6 jar而不是Java 6 SE JDK中包含的类? 更新:解决方案基于彼得的答案

使用java,eclipse和ant自动复制构建的文件和库

我在Windows 7上使用java和eclipse,我正在尝试构建一个服务器程序,它将运行在我网络上的另一台(ubuntu)机器上。 如何让eclipse将构建的类文件保存到外部位置(我有一个驱动器映射,或者它甚至可以通过ssh / sftp /其他)? 我在该机器上创建了一个git存储库,因此类文件保存在那里,但是我正在使用的外部库(在构建路径上)不会保存为存储库的一部分。 理想情况下,我想将eclipse自动复制到另一个目录中使用的内置类和库(当我点击“run”时,甚至更理想地让它自动运行/终止程序,虽然我怀疑可能有点太过乐观)。 我认为我相信用ant安装的ant可以做到这一点,但我不确定如何实现它。

ant未能导入R.java

我正在研究一个ant构建文件(独立于eclipse)来构建我的android应用程序。 我需要生成R.java文件。 我已经成功完成了,但是,当它试图从src目录构建我的项目时,它抱怨它无法找到导入的R.java文件。 我在gen目录中看到它……但它仍然无法构建。 它在build-project目标中失败。 失败说它“无法找到符号”并且它正在为R.java文件提供帮助。 它指向的代码行是导入行。 这是我的xml文件,请大家帮忙,谢谢! 如果您需要更多信息,请与我们联系。