小编wib*_*arr的帖子

运行其他jar文件时,Ant构建文件无法将jar文件放入类路径中

我是Ant构建文件的新手,我已经设法建立我的构建文件来创建我的构建目录结构,编译我的所有文件,并将它们装入一个带有清单正确指定主类的jar中.

但是,我也试图在buildfile中添加运行我刚刚创建的jar的功能.它会尝试运行,但我遇到了这个错误:

run:
 [java] Exception in thread "main" java.lang.NoClassDefFoundError: edu/course/lab/pkg3/Lab31

 [java]     at edu.school.oad.lab.pkg1.Main.<init>(Unknown Source)
 [java]     at edu.school.oad.lab.pkg1.Main.main(Unknown Source)
 [java] Caused by: java.lang.ClassNotFoundException: edu.course.antlab.pkg3.Lab31
 [java]     at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
 [java]     at java.security.AccessController.doPrivileged(Native Method)
 [java]     at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
 [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
 [java]     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)

 [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
 [java]     ... 2 more
 [java] Java Result: 1
Run Code Online (Sandbox Code Playgroud)

所以我知道这意味着当我尝试运行jar文件时,jar文件的结构正确并且清单设置正确,但它找不到类Lab31,因为它没有包含在该特定的jar文件中.相反,它包含在我的库文件夹中的另一个jar文件中./lib/.我尝试使用相同的方法设置运行jar文件的类路径,就像我为实际编译设置类路径一样,但这似乎不起作用.

这是我对构建文件的运行部分所拥有的:

<target name="run" depends="init, prepare">
    <java jar="${build}/jar/AntLabRun.jar" fork="true">
       <classpath>
          <pathelement location="${lib}/resources.jar" /> 
       </classpath>
    </java>
</target>
Run Code Online (Sandbox Code Playgroud)

我唯一的想法是jar文件认为resources.jar文件位于$ {build}/jar/$ {lib} /resources.jar而不仅仅是$ {lib} /resources.jar,但如果这是我仍然不确定如何解决它.有人可以提供一些指导吗?

java ant jar classpath

6
推荐指数
2
解决办法
2032
查看次数

Linux中用户空间的高精度计时

现在,我正在尝试确定一种方法来测量特定函数的时间(类似于pthread_create).当然,现在,这些类型的功能都经过了极大的优化,以尽可能少地占用时间; 事实上,我的计时器在用户空间中使用gettimeofday以微秒为单位的计量器无法充分测量任何东西.

通常,如果我可以搞乱内核,我会使用像get_cycles这样的东西来测量原始周期数作为性能指标.但是,我还没有找到在用户空间中执行此操作的方法.有没有办法使用get_cycles(或等效的)或其他更高精度的计时器,我可以在用户空间中使用它来测量极快的功能?

c linux timing

4
推荐指数
1
解决办法
9763
查看次数

标签 统计

ant ×1

c ×1

classpath ×1

jar ×1

java ×1

linux ×1

timing ×1