Articles of ant

如何使用Ant,文件和文件夹“chmod -R + w”?

我想在Ant构build脚本中执行相当于chmod -R +w foo/的操作。 到目前为止,我正在使用这个: <chmod perm="g+w"> <dirset dir="${basedir}/foo"> </dirset> <fileset dir="${basedir}/foo"> </fileset> </chmod> 是否有一个更好的方式来写入, recursion地包含文件和文件夹?

构build可运行的jar时Ant会卡住

又是我。 我一直在尝试使用ant脚本将Java项目创build为可运行的jar。 这是我的build.xml <project name="simple-app" basedir="." default="main"> <property name="src.dir" value="src" /> <property name="build.dir" value="build" /> <property name="classes.dir" value="${build.dir}/classes" /> <property name="jar.dir" value="${build.dir}/jar" /> <property name="lib.dir" value="lib" /> <property name="main-class" value="app.App" /> <path id="classpath"> <fileset dir="${lib.dir}"> <include name="*.jar" /> </fileset> <dirset dir="${build.dir}"> <include name="classes"/> </dirset> </path> <target name="clean"> <delete dir="${build.dir}" /> </target> <target name="compile"> <mkdir dir="${classes.dir}"/> […]

Android:ANT构build失败与谷歌播放服务的lib:“解决一个没有项目project.properties文件的path”

我试图使用ANT构build我的应用程序,并且在包含google-play-services-lib库项目之后,我失败了。 步骤1 我在我的project.properties文件中设置了对库项目的引用: android.library.reference.1=/path/to/google-play-services_lib 第2步 我在google-play-services_lib文件夹中运行这些命令: android update lib-project –path . ant clean ant release build立成功! 第3步 回到我的项目文件夹 ant clean ant release 错误 BUILD FAILED /android/tools/ant/build.xml:460: /path/to/google-play-services_lib resolve to a path with no project.properties file for project /my/project-folder 这两个文件夹中都有一个project.properties。 google-play-services_lib中包含以下代码: target=android-8 android.library=true 我明显错过了在我面前的东西,我非常感谢你的帮助。 谢谢!

ant:warning:编码UTF8的不可映射字符

我看过很多像我这样的问题,但是他们不回答我的问题,因为我使用的是ant,而且我没有使用eclipse。 我运行这个代码: ant clean dist ,它告诉我无数次warning: unmappable character for encoding UTF8 。 我看到在Java命令中有一个-encoding选项,但是这并不能帮助我因为我使用的是ant。 我在Linux上,我试图运行Sentrick的开发版本; 我没有做任何修改,我只是下载它,并按照他们的指示 ,这不是没有什么区别。 我发邮件给开发者,他们告诉我这是个问题,但是我怀疑这个问题实际上是在这个错误的结尾: BUILD FAILED /home/daniel/sentricksrc/sentrick/build.xml:22: The following error occurred while executing this line: /home/daniel/sentricksrc/sentrick/ant/common-targets.xml:83: Test de.denkselbst.sentrick.tokeniser.components.DetectedAbbreviationAnnotatorTest failed 我不知道我现在要做什么,因为我真的需要它的工作

如何在非Eclipse Android应用程序中正确包含支持库

我正在考虑如何让Android的支持库在Eclipse之外进行包含和编译。 我使用Linux作为我的编译环境,我没有使用任何IDE来创build应用程序,只使用基本的Android SDK。 我只是回答了关于Eclipse的这个问题,但是我怎样才能使用Ant和Android SDK呢?

Linux删除大于1年的文件夹和超过3个文件

我正在写一个ant脚本来清理一个存档文件夹 以下是我需要清理的方法:我需要删除超过一定天数的文件夹,并且有超过3个文件。 所以例如,如果一个文件夹是300天,但只有3个文件,将不会被删除。 我知道我可以ssh进入档案, find -mtime +365 -exec rm -rf {} ;\删除超过1年的文件,但我不知道如何解释最less的3个文件 我也知道find -type f | wc -l find -type f | wc -l会列出文件的数量,但是这对脚本没有太大的帮助 有任何想法吗?

如何从Ant启动一个聚合的jetty-server JAR?

背景 免责声明:我对Java很less有经验。 我们之前在我们的Ant构build过程中使用了Jetty 6的包装版本来处理按需静态内容(JS,CSS,图像,HTML),因此我们可以在PhantomJS上运行针对HTTP托pipe环境的unit testing。 但是,Jetty现在在8.1.3版本,我们不再需要这个包装(这解决了现在正在讨论的另一个问题),所以我想更新到直接使用Jetty 8.1.3。 首先,我下载了整个Jetty发行版,重量大约40MB。 这是从Ant开始的,使用“start.jar”…但是我并不想在所有地方推动那些不必要的JAR。 然后我从Maven回购站下载了聚合“jetty-server-8.1.3.v20120416.jar”(最新), 但我似乎无法像使用“start.jar”那样从Ant使用该JAR,例如“java -jar jetty-server-8.1.3.v20120416.jar选项=服务器” Jetty文档既差又缺(404's)。 啊! 实际问题 我用这个聚合“jetty-server”JAR做了些什么? 我应该指向一个特定的类而不是整个JAR吗? … 相关问题: Jetty需要的最小文件集以提供静态内容?

环境variables错误 – 不被识别为内部或外部命令

这是一个重写,以巩固我搜集的答案来解决我的问题。 我已经安装了Ant。 当我在命令行上使用“ant”时,我得到了“ant不被识别为内部或外部命令,可操作程序或batch file”的消息。 我很快就确定这是我的环境variables的一个问题。 我假设你已经有改变你的环境variables的指示。 下面的要点涵盖了那些笔头指示不会告诉你的挑剔的知识。 当我试图解决这个问题的时候,我build议你单单通过它们。 知道我正在运行Windows7将是重要的。 这些观点对于Windows而言可能是相当普遍的,但是我留给读者来build立。 如果你的问题仍然没有解决,请创build一个新的问题,也许回头看这个问题。 因为这个问题已经解决,所以不要求求助。 其他解决scheme,但可以在这里添加(或张贴&我将添加它们)。 一旦从命令行获得版本号(例如:“ant -version”或“java -version”),就解决了环境variables问题。 之后,你有一个不同的问题。 我花了额外的2个小时试图“修复”一个“Buildfile:build.xml不存在!生成失败”的命令行错误,没有意识到这意味着这个问题已经修复,我已经转移到另一个。 最后一条build议。 在玩游戏时,将整个PATHvariables复制并粘贴到某个安全的地方。 如果你不小心点击“删除”,你不会有机会恢复,这可能会导致很多痛苦。 通过这些步骤 closures所有打开的命令行控制台(Windows控制台)并重新启动它。 这将重置variables,并且需要在每次更改环境variables时执行此操作。 确保您在环境variables中不留空格。 最后没有空格,variables之间没有空格。 检查您的拼写是否一致,并检查您的位置是否正确。 将您的新文本添加到PATHvariables的开始,而不是结束。 这样可以避免与其他内容的冲突,以及如果您多次添加内容的问题。 它停止阅读的第一个成功。 确保PATHvariables在新添加和现有文本(不包含空格)之间插入了分号(“;”)。 如果命令行“echo%JAVA_HOME%”返回“%JAVA_HOME%”,那么你可能有权限问题(使用你的%variables%不是我的%JAVA_HOME%); 将新variables(例如“JAVA_HOME”或“ANT_HOME”)及其path放入系统variables中。 从用户variables中删除它。 使用用户variables是我不得不解决的最后一个问题。 奇怪“echo%JAVA_HOME%”很好,但“echo%ANT_HOME%”返回“%ANT_HOME%”。 最后,如果一切都失败了, 重启你的电脑 获取软件的新副本,安装并重新启动。 我感谢那些帮助和以前的堆栈溢出作者的post,我阅读试图find解决scheme。

从* nix在远程Windows机器上执行exe或bat文件

我试图从我的Linux在云上的远程Windows计算机上执行一个bat文件。 蝙蝠文件启动selenium服务器,然后我的seleniumtesting运行。 我无法在该机器上启动seleniumRC服务器。 我尝试过使用Telnet,但问题是当telnet会话closures时,RC服务器端口也closures。 作为我的代码,我的代码必须启动服务器,所以我尝试了ANT telnet任务,并且还执行te​​lnet的两个端口被closures的shell脚本。 我读了关于Open SSH,用于Linux和cygwin的psexec。 但我没有得到如何使用这些,他们会解决我的问题。 我试图启动一个服务,将启动服务器,但在这种方法我没有得到浏览器可见所有testing在后台运行,因为我的脚本需要屏幕截图浏览器的可见性是必须的。 现在我的问题是使用什么,哪些对我的工作更可取。 而我select的应该由代码执行,它可能是shell,ant或php。 提前致谢。

jenkins和从Windows批处理返回代码

我使用Jenkins(在Windows机器上)通过Ant为不同的目标编译代码。 为此,我把这个调用包装在一个(windows)批处理循环中,像这样: @echo off for %%t in (target1 target2 target3) do ( ant -f build.xml build -DPARAM_TARGET=%%t ) 这是我的第一个想法…但是,即使(例如)target1失败,这个代码也会导致成功的构build。 所以我把更多的线路放到windows批量生成步骤来获得更多的概述。 此外,我已经checekdout代码来获得相同的工作空间比jenkins已经到我的本地机器,并添加一个test.bat来检查Windows批处理代码可以工作。 @echo off for %%t in (target1 target2 target3) do ( ant -f build.xml build -DPARAM_TARGET=%%t echo ELVL: %ERRORLEVEL% IF NOT %ERRORLEVEL% == 0 ( echo ABORT: %ERRORLEVEL% exit /b %ERRORLEVEL% ) ELSE ( echo […]