【问题标题】:java maven project structure refactorjava maven项目结构重构
【发布时间】:2020-05-10 10:34:55
【问题描述】:

我有一个像这样的 Maven 项目结构。它是一个 Java 网络应用程序。我使用 Idea 作为我的 IDE。 controller 依赖于Core.javaCore.java 依赖于util/.

|-com
  |-domain
    |-app
      |-controller
        |- xxx.java
      |-service
        |- xxx.java
      |-dao
        |- xxx.java
      |-util
        |- xxx.java
      |-core
        |-Core.java

'Core.java' 是一个引擎类,我希望它可以轻松替换,这样我就可以以简单的方式为不同的客户更改引擎(我不需要更改引擎之外的任何代码)。我有一个想法是把它移到像这样的独立 jar 中

'engine.jar'
|-com
  |-domain
    |-app
      |-core
        |-Core.java

并删除我项目中的原始文件。当我需要这个引擎(或另一个引擎)时,我只需要将engine.jar 导入我的项目。在此之后,我的 IDE 中的项目结构看起来像

src
|-java
  |-main
    |-com
      |-domain
        |-app
          |-controller
            |- xxx.java
          |-service
            |- xxx.java
          |-dao
            |- xxx.java
          |-util
            |- xxx.java
External Libraries
|-xxx
|-xxx
|-engine.jar
   |-com
     |-domain
       |-app
         |-core
           |-Core.java

它没有工作。 controller 中的类找不到Core.java,它在import com.domain.app.core.Core 中显示一条红色波浪线。但是Core.java 可以在util/. 中找到它的依赖项。所以项目不能通过编译。
我的问题是:我怎样才能做到这一点?或者我的解决方案是错误的,这永远不会奏效?

【问题讨论】:

  • 您能否最后发布您的 pom.xml 代码,看看错误在哪里?

标签: java maven jar compilation


【解决方案1】:

你的解决方案不是它完成的方式。

您不会将 jar 复制到 Maven 项目中。您在 POM 中将它们声明为 <dependency>

【讨论】:

    猜你喜欢
    • 2022-12-17
    • 1970-01-01
    • 2011-10-13
    • 1970-01-01
    • 2019-02-15
    • 1970-01-01
    • 1970-01-01
    • 2013-07-11
    • 1970-01-01
    相关资源
    最近更新 更多