eclipse:如何将Java程序调试为.jar文件?

Jas*_*n S 33 java eclipse jar

我用它ant在Eclipse中创建.jar文件.效果很好.

我有一个正在处理的.jar文件,希望代码在.jar文件中(它在.jar文件所在的目录中查找.properties文件) - 标准的Eclipse"Run"和"Debug"菜单执行main()指定Java类的方法......但它们是从包含已编译类文件的目录执行的,而不是jar文件.有没有办法改变这种行为,所以Eclipse从相应的.jar文件运行代码?

(我现在的解决方法是在外部运行.jar文件,暂停等待调试器,根据Dave Ray对我的其他问题的回答.)

Ion*_*pin 64

您可以像这样运行jar来使用远程调试

java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 -jar yourJar.jar
Run Code Online (Sandbox Code Playgroud)

然后从IDE连接到该端口

  • 在Eclipse中,我们进入"Debug Configurations ..."并创建一个新的"远程Java应用程序". (6认同)

Von*_*onC 30

是的,你可以创建一个自定义的" Run Configuration":
即",Java Application"一个,用:

  • Classpathtab从其默认内容(.class目录)清空并添加了jar
  • Source选项卡及其默认内容(应引用src项目目录)

可以运行或调试一个这样的配置.

http://www.kermeta.org/docs/html.chunked/KerMeta-UI-UserGuide/KerMeta-UI-UserGuide_figures/KerMeta_RunCommandLine_classpath.png

(将jar作为用户条目的自定义配置示例)


Ale*_*usa 7

我刚刚找到以下链接,该链接描述了整个过程以远程调试Java jar。

使用Eclipse远程调试Java应用程序

主要部分有:

目标VM充当调试服务器

java -Xdebug -Xrunjdwp:transport = dt_socket,server = y,address =“ 8000” -jar test.jar

目标VM充当调试客户端

java -Xdebug -Xrunjdwp:transport = dt_socket,address = 127.0.0.1:8000,suspend = y -jar test.jar

根据运行目标vm,客户端或服务器的方式,必须不同地配置Eclipse。

如果您将目标vm作为客户端启动,则进行Eclipse配置

在此处输入图片说明

Eclipse配置(如果将目标虚拟机作为服务器启动)

在此处输入图片说明

本文还对该主题进行了简要介绍。