java maven module_Java9+模块和maven的集成

在Java9以前,maven已经提出了模块的概念。用过maven的对于maven的模块绝对不陌生。那么现在有了jigsaw,还需要maven的模块吗?本篇简单介绍一下Java模块和maven的集成使用。通过本篇可以看到,Java模块和maven模块是两个维度的东西,互不干涉对方内政。

712ec186775063d9d426004129c8b0c4.pngJava9

用IDEA创建一个空的maven项目,比如

com.j11jigsaw-maven

在根项目右键,给项目增加一个maven模块(也是idea模块),比如

jigsaw-mavencom.j111.0-SNAPSHOT4.0.0helloModule

模块信息会加到父级的pom.xml中。

在helloModule模块的src/main/java目录下随便创建一个类,比如com.j11.hello.HelloModules。我们的目的只是要在另一个模块引用它。在当前模块创建Java模块描述文件,并exports com.j11.hello包。

接下来用同样的方式创建第二个maven模块,比如

jigsaw-mavencom.j111.0-SNAPSHOT4.0.0okModule

创建module-info.java并requires com.j11.hello。

在okModule的src/main/java目录下随便创建一个类,比如

package com.j11.ok;import com.j11.hello.HelloModules;public class OkYou {public static void main(String[] args) {System.out.println("ok module");var var = new HelloModules();System.out.println(var.getClass());}}

运行,可看到输出结果。

你可以尝试把okModule的模块描述文件删掉,看下运行是否正常。

从上面的过程可以看到:和maven搭配的时候,Java的模块是用来控制访问级别的,前面说过public关键字的能力降低到模块内了。如果用到了Java模块(没用到就和Java9之前一样),就必须通过requires才能访问,及时它们在同一个maven项目内。maven是用来组织项目的,它的能力和使用Java模块以前一样:管理依赖,构建项目。不使用maven,在任何Java版本下这都是一件费力气的事情。

希望今天的内容对大家有帮助!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值