问题标签 [taskdef]
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 - 使用 Maven 依赖项在 Ant 中定义 testNG taskdef
我正在尝试使用 Ant 和 Maven 来构建一个项目。我正在使用 testNG 作为测试单元。如此处所述(http://testng.org/doc/ant.html),我已将 taskdef 定义如下:
在蚂蚁。
在 Maven 中,我添加了以下内容(如此处所述:http: //testng.org/doc/maven.html)
Maven 正在从 Maven 存储库中获取文件,并且我检查了 /.m2 下的位置。现在我从 maven 获得了 testNG,我应该更改 ant 中的 taskdef 以在 Maven 存储库中使用这个新的。我不知道该怎么做。我尝试了以下方法:
和
和
但没有成功,第二个抱怨我不应该使用classpathref,第一个说我应该指定类。第三个正在工作,但不完全。它正在进行中,我猜它通过了 taskdef 步骤,但它没有执行测试。蚂蚁的一部分(第三个):
部分 Ant 输出:(注意执行的 echo,它以某种方式通过了 taskdef 步骤)
我不确定如何使用 Maven 存储库中的 testNG 库来定义( taskdef )Ant 中的 testngtasks。任何见解将不胜感激
ant - Intellij IDEA 无法识别 XJC 任务属性
我有一个带有 XJC 任务定义的 ant build.xml 文件:
jaxb dir cotnains jaxb-xjc.jar 里面有 XJCTask 类。
然后我在某个目标中调用 xjc 任务:
Intellij IDEA 无法识别 xjc 调用的结构/模式,并以红色突出显示所有属性(目标、包、标题)和包含元素(模式)。
如果我选择 Ant 选项并将 jaxb-xjc.jar 添加到其他类路径列表,这将无济于事。我使用捆绑的 Ant 1.8.2
不好的是,当我在 IDEA 中编译它时,会出现很多相关错误,但是当我运行构建脚本时,一切正常。我想抑制这些错误。
有任何想法吗?
java - Ant taskdef - PermGen 空间不足
使用创建子项目的 Ant 任务,例如 <antcall>
并且<ant>
可能由于以下错误之一而在重复调用时导致构建失败:
- java.lang.OutOfMemoryError: PermGen 空间
- java.lang.OutOfMemoryError:Java 堆空间
仅当正在调用的任务之一使用<typedef>
or定义时才会发生错误<taskdef>
,并且在使用与 Ant 捆绑在一起的任务(例如<javadoc>
.
有没有办法在OutOfMemoryError
不增加最大 Java 堆大小的情况下避免这种情况?虽然增加堆大小暂时有效,但如果添加更多内存密集型任务,问题仍然会重新出现。
以下示例任务和关联build.xml
文件
OutOfMemoryError
在我的 Linux 机器上导致 Java 堆设置为 10 MB(用于测试)。Ant 任务构造了一个需要大量内存的对象(在本例中为闭包模板大豆模块的 Guice 注入器),然后使用<antcall>
.
CreateGuiceInjectorTask.java
构建.xml
测试输出:
java - 如何为 Ant 构建配置 Ivy
我目前ANT_HOME
位于/home/<myuser>/ant/1.8.4/ant-1.8.4
.
我刚刚下载了包含其依赖项的 Apache Ivy tarball。我将其提取到/home/<myuser>/ivy/2.3.0-rc1/ivy-2.3.0-rc1
.
然后我复制/home/<myuser>/ivy/2.3.0-rc1/ivy-2.3.0-rc1/lib/*.jar
到ANT_HOME/lib
. 如果我对 Ant 如何使用插件/扩展的理解是正确的,那么 Ant 现在应该能够在运行时访问所有 Ivy 的任务。
我的下一个问题是,如何在 Ant 构建文件中定义 Ivy 任务?说我要使用ivy-retrieve
,ivy-resolve
和ivy-publish
任务。当我从命令行运行我的 Ant 构建(我不会通过 Ant-Eclipse 插件构建)时,我需要做哪些配置(在 XML 中)才能使这些任务正常工作。提前致谢!
xml - 编写我的第一个 Ant 任务:我缺少什么?
我已经阅读了这篇文章并用它来编写我的第一个 Ant 任务,名为AutoTestTask
:
我还将此对象编译并打包成auto-test.jar
.
如果我对 Ant 的理解是正确的,那么为了将它包含在另一个项目的构建中,我使用以下 XML:
我相信我还需要复制auto-test.jar
到我的 ${ANT_HOME}/lib 目录中 -有人可以确认吗?令我困惑的是xmlns:at="antlib:org.me.auto-test"
XML 顶部的属性,特别是该antlib:<whatever>
部分。这是某种特定于 Ant 的协议,它说“*任何由at
命名空间限定的东西都可以在 ${ANT_HOME}/lib 中找到,并且根包为org.me.auto-test
*”?如果没有,有人可以解释它的含义吗?
另外,如果我遗漏了任何明显的内容或配置不正确,请告诉我。提前致谢!
ant - Gradle:如何定义依赖于 ant 目标的任务
嗨,如果我列出所有带有任务的gradle testGradle
任务 - 我看到所有导入的 ant 任务,但是当我尝试创建依赖于 ant 任务的任务时,我得到“无法确定任务':testGradle'的依赖关系”。
有问题的那一行:task testGradle(dependsOn: 'init' )
- 它显然没有看到 ant init 任务。
我做错了什么?
构建.gradle
全部完成任务
其他任务
all compile - 编译主源代码树 java 文件
byWorld5 copyTestConfiguration - 复制单元测试配置 deployLoggerProperties - 将 logging.properties 部署到 tomcat execMoped importTasks install - 在 Tomcat 列表中安装应用程序 - 列出 Tomcat 应用程序 init - 准备运行编译工件 reload - 在 Tomcat 中重新加载应用程序 start - 启动 Tomcat 应用程序 stop - 停止 Tomcat应用程序测试 - 运行 junit 测试 编译 - 编译主源代码树 java 文件
> 毕业-v
摇篮 1.1
Gradle 构建时间:2012 年 7 月 31 日星期二下午 1:24:32 UTC Groovy:1.8.6 Ant:Apache Ant(TM) 版本 1.8.4 编译于 2012 年 5 月 22 日 Ivy:2.2.0 JVM:1.6.0_24(Sun Microsystems Inc. 20.0-b12) 操作系统:Linux 2.6.32-220.23.1.el6.x86_64 amd64
>gradle -c
org.gradle.api.GradleScriptException:评估根项目“moped_gradle”时出现问题。在 org.gradle.groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:54) 在 org.gradle.configuration.DefaultScriptPluginFactory$ScriptPluginImpl.apply(DefaultScriptPluginFactory.java:127) 在 org.gradle.configuration.BuildScriptProcessor .evaluate(BuildScriptProcessor.java:38) 在 org.gradle.configuration.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:43) 在 org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:463) 在 org. org.gradle.configuration.ProjectEvaluationConfigurer.execute(ProjectEvaluationConfigurer.java:23) 在 org.gradle.configuration 的 gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:75)。在根项目“moped_gradle”上。在 org.gradle.api.internal.AbstractDynamicObject.propertyMissingException(AbstractDynamicObject.java:43) 在 org.gradle.api.internal.AbstractDynamicObject.getProperty(AbstractDynamicObject.java:35) 在 org.gradle.api.internal.CompositeDynamicObject.getProperty (CompositeDynamicObject.java:60) 在 org.gradle.groovy.scripts.BasicScript.propertyMissing(BasicScript.java:70) 在 build_62g86rvs7k0vqsu3ssgdsrobsc.run(/home/natalik/MyInstalls/moped_gradle/build.gradle:14) 在 org.gradle .groovy.scripts.internal.DefaultScriptRunnerFactory$ScriptRunnerImpl.run(DefaultScriptRunnerFactory.java:52) ... 33 更多
ant - 由taskdef定义的任务会在ant中默认运行fork模式还是在同一进程内?
由于 taskdef 没有 fork 属性,所以默认情况下,taskdef 定义的任务是在 fork 模式下运行还是在运行 ant 脚本的同一进程内运行。
我的任务定义如下
提前致谢,索曼
ant - 使用 ant 的 taskdef 解析类路径并仅运行所需的目标
我的main-build.xml看起来像:
deploy.xml在第三方 jar 中存在的类之一上使用 taskdef ant 任务:
sub-build.xml导入main-build.xml &deploy.xml
并尝试运行 deploy.xml 中存在的 ant 目标,但无法抱怨
如何解决这样的问题。由于在执行目标之前导入文件时会执行所有任务定义和导入,因此它失败了。不确定将所有抱怨的第三方 jar 添加到 ant 的类路径是否正确?
ant - 从 Gradle 使用 Taskdef + 可用任务导致失败
我正在通过 taskdef 加载 ant-contrib 然后我正在检查创建了“IfTask”的可用任务。这失败了
可用任务似乎没有使用 taskdef 使用的相同类加载器进行检查?
在 Oleg Pavliv 回答后编辑经过一番折腾,这有效地起作用。我的问题应该更清楚。
这在 Ant 中有效,但在从 Gradle 调用 ant 时不起作用,即在 gradle 构建中:
java - 如何运行 ant 任务作为先决条件?
我使用此处的说明创建了自己的 ant 任务。在我的 ant 脚本中,我创建了<taskdef>
这样的:
然后我可以将调用它的脚本作为 ant 任务导入:
这一切都很好。现在,我想在 taskdef 发生之前在 myUploader.xml 中进行一些设置。 <taskdef>
不喜欢if
,unless
或depends
. 如何确保在<taskdef>
完成之前调用我的设置任务?