为了在调试代码时提供帮助,我建议我们的JAR文件应该包含源代码。我想知道这可能会引起什么问题。我的第一反应是JAR文件会稍微变大。我可以接受这个。还有其他问题需要考虑吗?
谢谢!
谢谢!
我强烈推荐这种方法。一些开源项目(例如 jMock,Hamcrest,GWT)也采用了这种方法。
这种方法可以避免使用单独的源代码文件。这也意味着,如果将来源项目丢失(在大型组织中有时会发生),后续的维护程序员将有机会重新创建它。
如果您愿意让那些有权访问该jar文件的人可以看到您的源代码,并准备接受jar文件大小增加的惩罚(以及可能忽略不计的创建、传输和部署jar文件所需时间的增加),那么这就是您需要担心的全部问题。据我所知,没有其他问题。
仅仅因为 Maven 标准要求保持源文件分离并不意味着您必须按照这种方式进行。
Java空间中的一些工具将从类路径(即从jar包内部)获取源文件并执行不良操作。
通常情况下,如果您添加了一个执行此操作的jar包依赖项...那么您最终会发现这些源文件被重新编译到依赖项目中并捆绑在其jar包中,然后所有类加载器都会陷入混乱状态,因为类从一个源加载,另一个源加载。
千万不要这样做。遵循Maven方式(即使不使用Maven),创建单独的-sources.jar
。