是否可以确定JAR中每个类的源文件?

时间:2013-06-17 16:48:42

标签: java jar utility

我正在尝试编写一个实用程序来减少一些常见错误 我在处理编译成jar文件的源代码管理的java代码时。 诸如忘记将文件添加到存储库或忘记提交的错误 更改为已修改的文件(毕竟它在本地工作) 我遇到的一个绊脚石是试图确定哪些.java文件 用于在jar文件中生成类文件。 这些信息存储在某个地方吗? 我能够想出的唯一解决方案是获取.class文件列表 从jar文件(jar -tf)中,忽略名称中带有'$'的所有类文件, 用'.java'替换字符串的'.class'部分,最后添加适当的 路径的前缀,用于查找用于生成.jar的.java文件 我想知道是否有更好的方法。 感谢

1 个答案:

答案 0 :(得分:0)

我不确定我是否能够理解从类文件生成Java文件名的必要性。

我可以想到三个解决方案:

  1. 最简单的方法是将java文件作为jar文件的一部分。这可以使用任何构建工具甚至是eclipse执行。
  2. 您已经做过的事情(列出然后重命名)
  3. 编写一个实用程序,在其中列出jar文件中的每个类文件。然后使用Java反射API找出类。