在JAR文件中包含源代码有什么缺点?

时间:2012-10-10 14:26:23

标签: java web-applications jar

为了帮助我们在调试时逐步执行代码,我建议我们构建JAR文件以包含源代码。我想知道可能会导致什么问题。我的直接想法是JAR文件会略大一些。我可以忍受这一点。我还需要考虑其他问题吗?

TIA

4 个答案:

答案 0 :(得分:4)

通常,您将已编译的代码和源代码分成两个不同的jar。

然后,当您需要调试代码时,可以在IDE中附加源代码jar。

像maven这样的构建工具很容易为你做到这一点。

答案 1 :(得分:2)

我强烈推荐它。我这样做,所以做一些开源项目(例如jMock,Hamcrest,GWT)。

使用单独的源jar可以节省大量时间。这也意味着如果在未来的某个时刻源项目丢失(有时会发生在大型组织中),那么维护程序员就有可能重新创建它。

如果您对能够访问jar的人能够看到您的源代码并准备支付罐子大小增加的代价(以及创建,转移和部署时间的可能微不足道的增加)感到高兴。那么这就是你需要担心的事情。据我所知,没有任何其他问题。

仅仅因为Maven标准是将源文件保持独立并不意味着你必须这样做。

答案 2 :(得分:1)

我通常会创建一个单独的源.jar。 Maven can easily create this,IDE知道如何访问/下载这些内容。

答案 3 :(得分:0)

java空间中的一些工具将从类路径中获取源文件(即从jar中获取),并做一些讨厌的事情。

通常情况下,如果您在执行此操作的jar上添加依赖项...那么您最终会将这些源文件再次编译到依赖项目中并捆绑在其jar中,然后所有类加载器地狱崩溃当类从一个源和另一个源加载时。

就是不要这样做。遵循Maven方式(即使不使用Maven)并创建单独的-sources.jar