Eclipse Maven创建多模块项目

Eclipse Maven创建多模块项目

很久没有写过CSDN的博客了,这次写博客主要有两个目的,第一:复习以前学过的知识,温故而知新。第二,方便更多人的学习,相互交流提升自己。

在这之前我有自己配置过Maven创建多项目。其中有遇到很多问题。在这里我一一列举出来。

首先第一个Maven Web创建过程出现的问题是在创建过程中找不到Artifact Id maven-archetype-webapp或者是有但是创建失败,一般创建失败都提示找不到骨架。
这里写图片描述
在这里网上有很多的解决,最常见的解决方式都是给一个maven的网址给你,里面有骨架内容让你在Configure里面导入进去。我也试过这种方法,最终是无效。造成这个原因的还是GW。因为maven使用骨架是需要得到xml配置的。而且有些骨架是包含有相关的Jar包的。因此你需要自己安装一个maven。在网上有maven安装的方法在这里我就不多做介绍了。安装完maven之后你可以用一个命令把maven工程相关的Jar包给catch下来。

第二个问题就是Maven创建子模块。
Maven创建子模块首先需要注意的是你首先得需要创建一个父模块。在这里我放上创建父模块的过程截图。
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
父工程创建之后需要注意的是需要把POM文件的打包方式改一下。
这里写图片描述

将这里的jar改成pom。

接下来就是创建子模块的过程了

在这里我将我的子模块分为两个模块。首先创建一个biz模块,用来做MVC的C模块,采用的是Spring容器。

这里写图片描述
这里写图片描述
这里写图片描述

如果要使用Java EE的话那肯定需要再建立一个动态web工程作为子模块。
这里写图片描述这里写图片描述

现在就建好了一个完整的具有MVC模式的maven web工程了。
工程结构大致如下
这里写图片描述

好的,下一步将在此maven工程的基础上整合spring + spring mvc + mybatis

有问题的朋友可以私聊我: QQ:1197983391或者私信留言给我都可以

Maven中,一个子模块只能有一个父模块,因此无法直接实现两个父模块共同引用子模块的情况。不过,可以通过在两个父模块中都添加对子模块的依赖来实现这一目的。 具体步骤如下: 1.在子模块的pom.xml文件中,声明自己的groupId、artifactId和version等信息,并引用所需的依赖。 2.在两个父模块的pom.xml文件中,分别声明对子模块的依赖。注意,这里的groupId、artifactId和version应该与子模块中声明的信息保持一致。 3.在两个父模块中,都可以引用子模块中的类和资源文件。 举个例子,假设有两个父模块A和B,以及一个子模块C,其中子模块C定义了一个名为"com.example.Calculation"的类,用于实现加法和减法运算。现在需要让父模块A和父模块B都引用子模块C中的Calculation类,可以按照如下步骤操作: 1. 在子模块C的pom.xml文件中,声明自己的groupId、artifactId和version等信息,并引用所需的依赖: ``` <groupId>com.example</groupId> <artifactId>module-c</artifactId> <version>1.0.0</version> ``` 2. 在父模块A和父模块B的pom.xml文件中,分别声明对子模块C的依赖: ``` <!-- 在父模块A中声明对子模块C的依赖 --> <dependency> <groupId>com.example</groupId> <artifactId>module-c</artifactId> <version>1.0.0</version> </dependency> <!-- 在父模块B中声明对子模块C的依赖 --> <dependency> <groupId>com.example</groupId> <artifactId>module-c</artifactId> <version>1.0.0</version> </dependency> ``` 3. 在父模块A和父模块B中,都可以引用子模块C中的Calculation类: ``` import com.example.Calculation; public class MainClass { public static void main(String[] args) { Calculation calculator = new Calculation(); int result = calculator.add(2, 3); System.out.println(result); } } ``` 需要注意的是,子模块C中的Calculation类应该是一个独立的模块,不依赖于任何父模块。同时,如果子模块C中的类和资源文件被父模块A和父模块B同时引用,可能会导致冲突和重复定义等问题,需要谨慎处理。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值