maven项目中子模块中相互引用问题解决方案

1 父模块为A,子模块为B和C,B和C为A项目新建的maven 模块项目。

B中在Run as ->Maven install 中出现


Could not resolve dependencies for project   XX : Failed to collect dependencies at XX

,此时只需先在父模块中进行Run as ->install ,之后子模块进行 Run as  ->install就没有问题了

  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
口: ``` interface PersonInterface { void display(); void work(); } class TeacherClass implements PersonInterface { private String id; private String name; private String gender; private String birthday; private String department; private String title; private在Maven项目,如果多个子模块需要相互引用,可以使用Maven模块依赖来解 double salary; public TeacherClass(String id, String name, String gender, String birthday, String department, String title, double salary决。具体步骤如下: 1.在需要引用其他子模块的子模块pom.xml文件) { this.id = id; this.name = name; this.gender = gender; this.birthday = birthday; ,添加对被引用模块的依赖。 例如,假设子模块A需要引用模块B this.department = department; this.title = title; this.salary = salary; } @Override public void display的类,可以在子模块A的pom.xml文件添加如下依赖: ``` <dependency> <groupId() { System.out.println("编号:" + id); System.out.println("姓名:" + name); System.out.println("性>com.example</groupId> <artifactId>module-b</artifactId> <version>1.0.0</version> 别:" + gender); System.out.println("出生日期:" + birthday); System.out.println("所在部门:" + department); System.out.println("职称:" + title); System.out.println("工资:" + salary); } </dependency> ``` 2.在被引用的子模块B的pom.xml文件,添加对子模块A @Override public void work() { System.out.println("教课..."); } } class StudentClass implements PersonInterface { 的依赖。 例如,假设子模块B也需要引用模块A的类,可以在子模块 private String id; private String name; private String gender; private String birthday; private int entranceScore; privateB的pom.xml文件添加如下依赖: ``` <dependency> <groupId>com.example</groupId> < String major; public StudentClass(String id, String name, String gender, String birthday, int entranceScore, String major) { artifactId>module-a</artifactId> <version>1.0.0</version> </dependency> ``` 3.在 this.id = id; this.name = name; this.gender = gender; this.birthday = birthday; this.entranceScore = entranceScore; this.major = major; } @Override public void display() { System命令行执行`mvn install`命令,将依赖的子模块安装到本地的Maven仓.out.println("编号:" + id); System.out.println("姓名:" + name); System.out.println("性别:" + gender库。 这样,在子模块A和子模块B都可以引用对方的类了。需要注意的); System.out.println("出生日期:" + birthday); System.out.println("高考分数:" + entranceScore); 是,子模块之间的依赖关系应该是一个有向无环图(DAG),避免出现循环依赖的情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值