2

java web开发(IDEA下的多module开发)

 1 year ago
source link: https://blog.csdn.net/feixiaoxing/article/details/127190339
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

java web开发(IDEA下的多module开发)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        稍微复杂一点的程序,都不会只有一个执行文件。而对于java来说,可能一个jar文件同时被web和app使用,这个时候把jar独立出来是最好的选择。所以,对于开发者而言,掌握IDEA下面的多module开发是一个重要的功能。

        另外,值得注意的是,IDEA下面的project和其他IDE所说的project不是一回事。以eclipse举例,上面的workspace类似于IDEA下面的project,是一个项目的意思。而eclipse里面的project,对应的应该是IDEA的module,也就是子模块的意思。这部分需要注意下。

        为了说明IDEA下面的module是如何开发的,今天可以举例说明一下。

1、用Maven创建工程,不选择模板,工程命名为Hello

2、删除src目录

3、在pom.xml里面添加packaging内容,如下所示,

4、选中Hello,右击,选择“New”-》“Module”,选中maven,选中“Create from archetype”,模型方面选中maven-archetype-quickstart,项目命名为prj-output,

65ae2dc24c9849269d2b3bd5ccb9fbcd.png

5、按照刚才的方法添加新module,即prj-api

26d442f429b74060881932a1213951c2.png

6、删除prj-api下面的org.example,可能需要删除两次,因为一次只能删除一个directory。

7、在prj-api的src/main/java下面添加com.data.algorithm.java文件 

8、继续处理prj-output的pom.xml文件,主要是将prj-api添加到prj-output的dependency中去,

9、修改prj-output的App.java代码,



newCodeMoreWhite.png

        引用的过程中,可能还会出现红色的波浪线。只需要选择maven,再reinstall一下就好了。

10、选择maven-》“Hello”-》“Lifecycle”-》“Compile”,

        不出意外,应该可以全部编译成功通过。

11、如果需要运行程序,那么选中App.class文件

ac9dffa04d9145369a6afba3e56cca86.png

                 选中之后,右击,选择“Run App.main”,

1abc9d65f33c4f288b56cf50cd6e23d9.png

         弹窗中在“Use class path of modules”一栏选择“Prj-output”,不出意外,就可以看到正常打印了。调试也是一样的道理。

0dd550a3587d4a0c9e01d305213651e7.png

12、总结

        多个module构成一个project,这不是很稀罕的事情。一种更常见的做法是,就是在project中同时添加server和web,web负责前后端的交互,server负责后台数据的处理,对于公用的子模块有一个api module,web后端和server之间可以通过数据库,或者通过xmlrpc沟通,这都是可以的,基本的结构形式是这样的,

8feac351be344c1d88fab1026ad0d02c.png

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK