首页 > 解决方案 > 使用 Ant 编译时出现“包不存在”错误

问题描述

我有一个 ant 构建脚本,负责编译和打包我的项目。当它到达编译任务时,构建失败并出现一堆“错误:包'X'不存在”错误。我认为它可能是类路径,所以我添加了一个回显以在编译运行之前打印出类路径。据说丢失的罐子都在那里。我不确定还有什么问题。任何帮助都会很棒。

我的 build.xml

<macrodef name="compile">
        <attribute name="src" />
        <attribute name="dst" />
        <attribute name="groovyc" default="false" />
        <echo>Compiling without groovy support</echo>
        <property name="myclasspath" refid="build.classpath"/>
        <echo message="Compile classpath= ${myclasspath}"/>
        <javac classpathref="build.classpath" includeantruntime="false" destdir="@{dst}" debug="${javac.debug}"  deprecation="${javac.deprecation}" target="${compiler.target}" nowarn="on" verbose="false">
                        <src path="@{src}" />
                        <compilerarg line="-proc:none" />
        </javac>
</macrodef>

类路径输出

编译classpath=/media/psf/Home/Documents/workspace/optics/Builder/lib/hibernate-jpamodelgen-1.2.0.Final.jar:/home/pbuchheit/.m2/repository/org/jboss/jboss-common-核心/2.5.0.Final/jboss-common-core-2.5.0.Final.jar:/home/pbuchheit/.m2/repository/org/dbunit/dbunit/2.7.0/dbunit-2.7.0.jar: /home/pbuchheit/.m2/repository/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar :/home/pbuchheit/.m2/repository/org/apache/poi/poi- ooxml/3.17/poi-ooxml-3.17.jar:/home/pbuchheit/.m2/repository/org/apache/poi/poi/3.17/poi-3.17.jar:/home/pbuchheit/.m2/repository/org/ apache/commons/commons-collections4/4.1/commons-collections4-4.1.jar:/home/pbuchheit/.m2/repository/org/apache/poi/poi-ooxml-schemas/3.17/poi-ooxml-schemas-3.17。罐

错误信息

[javac] /media/psf/Home/Documents/workspace/optics/Common/src/com/tura/common/CircularByteBuffer.java:22: error: package org.apache.commons.collections does not exist
[javac] import org.apache.commons.collections.BufferOverflowException;
[javac]                                      ^
[javac] /media/psf/Home/Documents/workspace/optics/Common/src/com/tura/common/CircularCharBuffer.java:22: error: package org.apache.commons.collections does not exist
[javac] import org.apache.commons.collections.BufferOverflowException;
[javac]                                      ^
[javac] /media/psf/Home/Documents/workspace/optics/Common/src/com/tura/common/CircularObjectBuffer.java:3: error: package org.apache.commons.collections does not exist
[javac] import org.apache.commons.collections.BufferOverflowException;
[javac]

标签: javamavenantjavac

解决方案


推荐阅读