解決IDEA?JDK9沒有module-info.java的問題
IDEA JDK9沒有module-info.java問題
1. 創(chuàng)建一個maven工程
2. 配置一下項目的編譯環(huán)境
注意:必須聲明為jdk9及其以后的版本,不然new中是沒有module-info.java這個選項
下面是使用jdk8的時候,沒有module-info.java這個選項
使用jdk10的時候,就有module-info.java這個選項
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.7.0</version> <configuration> <source>10</source> <target>10</target> </configuration> </plugin> </plugins> </build>
3. 一些注意事項
新建 module-info.java 文件必須選擇 java這個文件夾,也就是存放java代碼的源文件夾,選擇其他文件夾右鍵是沒有的
自己不能手動通過 new JavaClass 創(chuàng)建 module-info.java 文件,自己是沒法創(chuàng)建的,因為Java變量定義規(guī)范是:字母、數(shù)字、下劃線,$符號,下面是創(chuàng)建失敗的截圖
雖然IDEA不讓創(chuàng)建,但是我們可以自己在外面創(chuàng)建好一個module-info.java 文件,再復(fù)制到 java 文件夾下(不建議)
module-info.java文件
提供模塊服務(wù)接口:
module module.first { ?? ?exports first.p1; //?? ?provides first.p1.Shoe? //?? ??? ?with first.p2.DoubleStar,first.p2.Warrior;?? ? ?? ?provides first.p1.Shoe? ?? ?with first.p1.ShoeFactory;//必須實現(xiàn)public static provider方法 }
使用模塊服務(wù)接口:
module module.second {?? ? ?? ?requires module.first;?? ? ?? ?uses first.p1.Shoe; }
下面演示訪問權(quán)限
open module module.first { //module module.first { ?? ?exports first.p1;?? ? ?? ?//opens first.p1; }
module module.second { ?? ?exports second.p1; ?? ?requires transitive module.first;? }
module module.third { ?? ?requires module.second; }
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Springboot+MyBatist實現(xiàn)前后臺交互登陸功能方式
這篇文章主要介紹了Springboot+MyBatist實現(xiàn)前后臺交互登陸功能方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01Spring框架開發(fā)IOC兩種創(chuàng)建工廠方法詳解
這篇文章主要介紹了Spring框架IOC兩種創(chuàng)建工廠方法詳解,文中附含詳細的代碼示例分別對靜態(tài)方法和實例方法創(chuàng)建工廠作了簡要的分析2021-09-09- 本章具體介紹了HashMap、TreeMap兩種集合的基本使用方法和區(qū)別,圖解穿插代碼實現(xiàn)。?JAVA成仙路從基礎(chǔ)開始講,后續(xù)會講到JAVA高級,中間會穿插面試題和項目實戰(zhàn),希望能給大家?guī)韼椭?/div> 2022-03-03
最新評論