Eclipse项目间的引用

我们在开发的时候,有时候需要把一个大的项目打散,尤其是现在微服务的架构很流行,一个大的项目往往被拆成很多小的项目,而有的项目作为公共工程被独立出来,比如有个工程专门提供各种Util工具类,有的工程专门提供数据库接口。

这些工程在项目结束后往往被打成jar包直接依赖给需要的工程,但是在开发过程中,这些工程的源码也是一直在变的,我们不能改一次源码编译一个jar包吧?这里介绍一下elipse项目之间的相互依赖。

假设我们的公共项目工程(被别的项目引用的工程)叫 util

1、Java Project引用

右键项目→Properties→Java Build Path→Projects→Add

勾选 util 工程→OK

看见util工程已经被添加进来,点击 Apply and Close。

这样eclipse会自动编译uitl工程并依赖给java工程。

2、Web Project引用

上述设置是针对于java project的,对于web project的设置方式是不同的。

因为web project不光需要编译util工程,还涉及到web容器对编译好的jar包进行发布

右键工程名称→Properties→Deployment Assembly→Add

选择Project→Next

选择util工程,点击Finish(注意此处可以选择多个工程)

确认util工程已经被添加进来,点击Apply and Close,设置完成。

++这里需要注意的是,++如果util工程依赖其他的jar包,也是需要把这些jar包copy到web工程的lib目录下或者把这些jar包也引入到Deployment Assembly里。

从上图我们可以看出,eclipse会在web project发布的时候,将uitl工程打包成uitl.jar,并发布到**web容器(比如tomcat)WEB-INF/lib/**目录下。

如果你按照java project的方式去依赖util工程的话,web project发布之后,在tomcat目录下是找不到util.jar这个jar包的,到时候就会报ClassNotFound的错了。

如上2点所述,不同项目类型(Java Project、Web Project等)右键-属性,弹出界面的属性选项不一样,这样也比较容易区分。

文件来源:https://www.cnblogs.com/floud/p/10598255.html

相关推荐
好奇的菜鸟6 分钟前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
DuelCode1 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
优创学社21 小时前
基于springboot的社区生鲜团购系统
java·spring boot·后端
幽络源小助理1 小时前
SpringBoot基于Mysql的商业辅助决策系统设计与实现
java·vue.js·spring boot·后端·mysql·spring
猴哥源码1 小时前
基于Java+springboot 的车险理赔信息管理系统
java·spring boot
YuTaoShao2 小时前
【LeetCode 热题 100】48. 旋转图像——转置+水平翻转
java·算法·leetcode·职场和发展
Dcs2 小时前
超强推理不止“大”——手把手教你部署 Mistral Small 3.2 24B 大模型
java
东阳马生架构3 小时前
订单初版—1.分布式订单系统的简要设计文档
java
Code blocks3 小时前
使用Jenkins完成springboot项目快速更新
java·运维·spring boot·后端·jenkins
荔枝吻3 小时前
【沉浸式解决问题】idea开发中mapper类中突然找不到对应实体类
java·intellij-idea·mybatis