当您在两个独立的应用程序中需要相同的 class 时,如何避免 Java 中的重复代码?

How to avoid duplicate code in Java when you require the same class in two separated applications?

为了简单起见,假设我有一个名为“Dog”的 class。

然后我有两个独立的应用程序,其中包含 class 的实现。

  1. 应用程序“A”对 Dog class.
  2. 做了一些事情
  3. 应用程序“B”对 Dog class.
  4. 做了另一件事

两个应用程序都需要 class,因此它会被复制。


现在让我们说一下:

  1. 这些应用程序不能合并为一个。
  2. A”和“B”的实现不能进入另一个应用程序。

我正在使用 Spring 引导,如果该信息有帮助的话。

有没有办法解决 Dog class 的重复问题?

正如@Slaw 所说,您可以创建一个 jar/library,然后使用任何构建工具,如 maven 或 gradle,并在构建时将 jar/library 打包到您的存档文件中 这里是 link 以获取更多信息 https://christianlydemann.com/a-guide-to-sharing-code-between-projects/

除了上述解决方案之外,您还可以使用 sonarqube 工具来识别代码重复。它会告诉您哪些代码是重复的以及如何修复它 https://docs.sonarqube.org/7.2/MetricDefinitions.html