build.xml蚂蚁问题

时间:2011-03-24 16:02:26

标签: java ant applet build.xml jar-signing

运行applet时出现以下异常: 线程“AWT-EventQueue-4”中的异常java.lang.NoClassDefFoundError:ice / net / SnapshotCacheManager

但文件在jar内。

我在线搜索,发现它可能与applet没有查看当前目录有关,我需要添加。到CLASSPATH,但我不知道如何将它添加到build.xml

由于

多伦

编辑:最后我想通了,它不是蚂蚁问题或构建XML,我得到了这个例外,因为我签署了两个不同的包含相同包的jar,所以发生了碰撞,而不是一个非常有用的异常。 ...

1 个答案:

答案 0 :(得分:0)

查看当前build.xml文件中的内容可能很有用,但您可能希望查看的部分是<target>元素,特别是<src path><fileset>元素。这是一个非常粗略的例子,带有一些指导变量。

<property name="classes.home"          value="/myproject/src"/>

<target name="compile_myproject" depends="clean">
    <javac destdir="${classes.home}" debug="off" optimize="on" deprecation="on">
        <classpath>
            <fileset dir="/location/of/jars/">
                <include name="*.jar"/>
                <exclude name="jar-I-dont-want.jar"/>
            </fileset>
            <fileset dir="/location/of/axis2/jars">
                <include name="**/*.jar"/>                    
            </fileset>
        </classpath>
        <src path="${classes.home}"/>
        <include name="/test/**/*.java"/>
        <include name="other/location/*.java"/>
        <exclude name="/debug/and/useless/files/**/*.java"/>
    </javac>
</target>

请注意${classes.home}是build.xml文件顶部定义的特殊变量。可以使用许多变量来简化操作并指定相对路径。