开发者

build.xml ant question

I am getting the following exception when running an applet: Exception in thread "AWT-EventQueue-4" java.lang.NoClassDefFoundError: ice/net/SnapshotCacheManager

but the file is inside the jar.

I searched online and found it might be related to the applet not looking in the current directory and i need to add .; to the CLASSPATH but i am not sure how to add it to the build.xml

Thanks

Doron

Edit: Finally I figured it out, it wasn't an ant problem or the build XML, I got this exception because I signed two jars containing the same package differently, s开发者_JAVA技巧o there was a collision, not a very informative exception....


it might be useful to see what is in your current build.xml file, but the section you probably want to look at is the <target> element specifically the <src path> and <fileset> elements. Here is a VERY rough example with some guiding variables.

<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>

note that ${classes.home} is a special variable defined at the top of the build.xml file. Many variables can be used to make things easier and specify relative paths.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜