`

3招解决ant构建时任务找不到(taskdef cann't be found)的问题

 
阅读更多
3招解决ant构建时任务找不到(taskdef cann't be found)的问题

[root@tivu25 test]# ant -f build.xml local_war
Buildfile: build.xml

local_war:

BUILD FAILED
/home/haoqf/software/APM/test/build.xml:18: taskdef class com.ibm.team.build.ant.task.LogPublisherTask cannot be found

Total time: 0 seconds

这是因为ant在当前java的classpath中找不到类LogPublisherTask(LogPublisherTask由 org.apache.tools.ant.Task派生而来),这时候需要重新指定当前的classpath,让它包含LogPublisherTask所属jar库或者class的路径。有三种方法:
1. 在ant命令行指定:
[root@tivu25 test]# ant -f build.xml local_war -lib /home/haoqf/software/RTC/RTC-BuildSystem-Toolkit-Linux-3.0iFix1/jazz/buildsystem/buildtoolkit/

2. 在build.xml指定:
<?xml version="1.0" encoding="UTF-8"?>

<project name="BVT_CVT" default="local_war">
    
     <target name="local_war">
        <taskdef name="logPublisher" classname="com.ibm.team.build.ant.task.LogPublisherTask">
        <classpath>
            <pathelement location="/home/haoqf/software/RTC/RTC-BuildSystem-Toolkit-Linux-3.0iFix1/jazz/buildsystem/buildtoolkit/"/>
            <fileset dir="/home/haoqf/software/RTC/RTC-BuildSystem-Toolkit-Linux-3.0iFix1/jazz/buildsystem/buildtoolkit/">
                <include name="**/*.jar"/>
            </fileset>
        </classpath>
        </taskdef>
    
        <logPublisher repositoryAddress="${repositoryAddress}"    />

     </target>
</project>

3. 设定当前环境变量CLASSPATH:
[root@tivu25 test]# export CLASSPATH=$CLASSPATH:/home/haoqf/software/RTC/RTC-BuildSystem-Toolkit-Linux-3.0iFix1/jazz/buildsystem/buildtoolkit/com.ibm.team.build.toolkit_2.2.0.v20110308_0258.jar

其中com.ibm.team.build.toolkit_2.2.0.v20110308_0258.jar包含了类LogPublisherTask的实现。
分享到:
评论

相关推荐

    Ant自定义任务

    在IT行业中,构建自动化是开发流程中的重要环节,Apache Ant作为一个开源的Java构建工具,扮演着关键角色。Ant以其灵活性和可扩展性,允许开发者自定义任务以满足特定的项目需求。本文将深入探讨“Ant自定义任务”的...

    使用Ant构建批量压缩js、css文件脚本

    3. **在Ant构建文件中引入YUI Compressor**:在build.xml中,使用`&lt;taskdef&gt;`标签引入YUI Compressor的任务定义,例如: ```xml &lt;taskdef resource="net/sf/antcontrib/antcontrib.properties" /&gt; &lt;taskdef name=...

    Ant构建工具学习笔记

    《Ant构建工具学习指南》 Ant,作为Java领域的一个强大构建工具,它的主要作用在于将复杂的项目构建过程规范化、自动化,使得开发者能够更专注于代码的编写而非构建流程。本文将深入探讨Ant的基本概念、安装配置、...

    ant-contrib-1.jar工具

    当用户在执行Ant构建脚本时遇到错误,可能是因为缺少某些特定的任务或者功能,这时候添加ant-contrib库的jar包就能提供缺失的组件,帮助完成编译过程。 标签"ant.jar包"是指Apache Ant的核心库,它包含了执行Ant...

    ant自定义任务

    4. **在build.xml中定义任务**:要在构建脚本中使用自定义任务,需要在`build.xml`文件中添加`&lt;taskdef&gt;`元素,指明任务的名称、类名以及类路径。这一步是将自定义任务注册到Ant中的关键。 5. **使用自定义任务**:...

    [北京圣思园Ant深入详解]_004.实现自定义Ant任务

    在Ant的世界里,自定义任务是扩展其功能的关键方式之一,允许开发者根据特定项目需求创建自己的构建步骤。Ant是Apache软件基金会的一个项目,它是一个基于Java的构建工具,广泛用于管理Java项目的构建、编译、测试和...

    ant lib ant 所有lib包

    Ant是Apache软件基金会下的一个Java项目,它是一个构建工具,类似于Make或MSBuild,用于自动化Java项目的构建过程,如编译、打包、测试等任务。Libs在编程语境中通常指的是库文件,包含了预编译的代码和资源,供其他...

    ant包+示例

    Ant使用XML来描述构建过程和依赖关系,使得构建任务的配置文件具有良好的可读性和可维护性。"Ant包+示例"的标题表明这可能是一个包含Ant基本组件和示例代码的压缩包,对于学习和理解Ant的使用非常有帮助。 在描述中...

    Ant入门与进阶ant

    总的来说,Ant是Java开发中不可或缺的工具,无论是在小型项目还是大型工程中,都能提供高效、一致的构建解决方案。对于Java开发者而言,掌握Ant的使用和配置技巧是提高开发效率的关键步骤。通过深入学习和实践,...

    ant-contrib-1.0b3.jar.zip

    虽然Ant本身提供了一些基本的任务,如编译、测试和打包,但在复杂的项目中,这些基本任务可能不足以满足所有需求,这时就需要引入像Ant Contrib这样的扩展库。 "ant-contrib-1.0b3.jar"包含了各种实用的Ant任务,...

    ant-contrib-1.0.jar.zip

    例如,通过在构建脚本中添加`&lt;taskdef&gt;`标签,可以加载并使用Ant Contrib中的任务: ```xml &lt;taskdef resource="net/sf/antcontrib/antlib.xml"&gt; &lt;pathelement location="path/to/ant-contrib-1.0.jar"/&gt; &lt;/...

    ant-contrib-1.0b3-bin.jar

    "ant-contrib"库是由社区开发的一个非官方Ant扩展,它包含了一系列自定义的任务和条件,使得Ant在处理复杂的构建逻辑时更加得心应手。其中,"ant-contrib-1.0b3-bin.jar"是这个库的特定版本,它包含了执行循环、决策...

    ant-1.6.5.zip

    7. **插件系统(Plugin System)**:Ant的扩展性主要体现在插件上,用户可以通过`&lt;taskdef&gt;`引入自定义的任务,以满足特定的构建需求。社区提供了大量插件,覆盖了各种第三方库的管理和部署。 8. **脚本支持...

    c++集成构建工具 cpptasks for ant

    在Java领域,Apache Ant是一个广泛使用的自动化构建工具,而当我们涉及到C++项目时,尽管Ant本身并不直接支持C++的编译,但可以通过扩展插件来实现这一功能。"cpptasks for Ant"就是这样一款插件,它为Ant提供了C++...

    ant-apache-oro.jar ant-apache-regexp.jar ant-apache-resolver.jar

    例如,你可能会在Ant构建脚本中使用`&lt;taskdef&gt;`标签来定义使用这些库的新任务,或者在其他任务中直接引用它们提供的类。 在JAVA开发中,这样的JAR包是项目依赖的重要组成部分。开发者可以通过Maven、Gradle等现代...

    ant 解决 打jar包后class 的Aspect问题

    综上所述,通过在Ant的构建脚本中适当地配置和使用AspectJ的任务,可以有效地解决打包后class的Aspect问题。这不仅包括正确编译AspectJ源代码,还涉及确保所有必要的AspectJ运行时依赖都被正确打包。这种做法对于...

    apache-ant-1.8.2

    - **编写自定义任务**:如果Ant的内置任务不足以满足需求,可以编写Java类实现自定义任务,并通过`&lt;taskdef&gt;`元素引入。 - **使用Ant Contrib**:Ant Contrib是第三方的Ant库,提供了额外的任务和元素,如循环、...

    ant-contrib-1.0b3-bin.tar.gz

    《Ant构建工具与Ant Contrib库在多循环打包中的应用》 在软件开发过程中,构建工具起着至关重要的作用,它们负责编译、测试、打包和部署等自动化任务。Apache Ant,一个由Apache软件基金会开发的Java构建工具,以其...

    jtest Ant构建自动化测试

    - **taskdef** 元素定义了 Ant 库的位置及类路径,使得后续可以调用 jtest 的相关任务。 - **property** 元素用于定义构建过程中的各个路径变量。 - **clean** 目标用于清理编译结果和测试报告等文件。 - **compile*...

    ant-contrib源文件

    "ant-contrib"目录下的"antlib.xml"文件是Ant Contrib的核心资源,它通过Ant的类加载机制被引入到构建环境中。开发者可以通过在Ant脚本中引用这个库,然后使用其中定义的任务。例如,要在Ant脚本中使用"foreach"任务...

Global site tag (gtag.js) - Google Analytics