如何避免包装无用的课程

时间:2017-06-02 12:01:21

标签: java optimization intellij-idea package

我正在研究Intellij plugin,这是我第一次尝试Java语言来构建一个“真正的项目”。在这个插件上,我创建了很多类(和枚举),并且在重构代码之后,我最终达到了我创建的某些类不再使用的程度(除了单元测试,这是未在最终包裹上打包)。

我的问题是:如果某个类不再需要在包上,有一些方法可以不将它从项目中删除它吗? (一旦我能够,将来再次需要这门课。

真实的例子:

在项目中使用 UserDataHolderUtil 枚举进行查找:

.jar 内容:

您可以注意到,此枚举目前仅用于单元测试,但它被打包到最终包中,永远不会被使用。

2 个答案:

答案 0 :(得分:0)

因果方法是在不同的源文件夹中组织您的类型和资源。这些可以在intellij的模块设置中配置。它通常分组在" source"," test source"," resources"和"测试资源"。

文件系统上的常见组织通常是(我认为这是一个事实上的标准,至少maven是这样做的)

  • 的src /主/ JAVA
  • 的src /主/资源
  • 的src /测试/ JAVA
  • 的src /测试/资源

然后应该相应地配置构建工具以打包生产jar和测试jar(然后使用生产jar作为依赖来运行其测试)。

希望这有帮助,......

答案 1 :(得分:0)

我将在IntelliJ IDEA中的同一项目下创建一个新模块,并将所有未使用的类型移动到新模块。

这样,类型的包层次结构将被保留,并且类型保留在同一个项目中,这意味着它们包含在您可能执行的任何重构中。

你做"未使用"模块依赖于项目的主要模块,但当然没有其他模块依赖于它,因此您不必将其包含在最终包中。

相关问题