redhat-developer / redhat-developer/vscode-java
supposed compilation errors when using java 17 modules in visual studio code
まだ誰も着手していません。
- 主要言語
- TypeScript
- スター
- 2.3k
- フォーク
- 546
- 平均マージ
- 20時間 1分
- マージ済み PR(30日)
- 11
説明
Environment
- Operating System: windows 11
- JDK version: "17.0.7" 2023-04-18 LTS
- Visual Studio Code version: 1.84.0 user setup
- Java extension version: v.0.25.15
When I create the following code I get a compilation error saying that certain packages do not exist. The steps I followed are:
1. create a project in java in my case it is called OCP JAVA 17 2. create a folder called 12. Modules (within this folder is the directory with program codes and modules written in Java 17) 3. create a folder called feeding 4. inside the feeding folder, create a module-info.java file with the following codemodule zoo.animal.feeding { exports zoo.animal.feeding; }5. inside the feeding folder, create a package or folders in the following order zoo/animal/feeding and add the Task.java file with the following codepackage zoo.animal.feeding; public class Task { public static void main(String... args) { System.out.println("All fed!"); } }6. compile Task.java class and module-info.java with following command in terminal opening from 12.Modules folder javac -p mods -d feeding feeding/zoo/animal/feeding/Task.java feeding/*.java 7. create a folder called mods and run the following command in the terminal to package our compiled code from the 12.Modules folder jar -cvf mods/zoo.animal.feeding.jar -C feeding/ . 8. run the program by entering the following command in the terminal from 12.Modules java -p mods -m zoo.animal.feeding/zoo.animal.feeding.Task must be printed in console All fed! 9. create a folder called care with the following file module-info.java with the codemodule zoo.animal.care { exports zoo.animal.care.medical; //here is vsc supposed compilation error requires zoo.animal.feeding; }10. inside the care folder create 2 packages/folders in the following order zoo/animal/care/details and zoo/animal/care/medical 11. in the zoo/animal/care/details package add the following file HippoBirthday.java// HippoBirthday.java package zoo.animal.care.details; import zoo.animal.feeding.*; public class HippoBirthday { private Task task; public static void main(String... args) { //mio System.out.println("Feliz cumple"); //mio } }12. in the zoo/animal/care/medical package add the following Diet.java file// Diet.java package zoo.animal.care.medical; public class Diet { public static void main(String... args) { //mio System.out.println("Diet"); //mio } }13. compile and package what is inside the care folder, in the terminal from 12.Modules with the following command javac -p mods -d care care/zoo/animal/care/details/_.java care/zoo/animal/care/medical/_.java care/module-info. javajar -cvf mods/zoo.animal.care.jar -C care/ . 14) run the classes that are inside the zoo.animal.care.medical package (which vsc says does not exist) in terminal from 12.Modules java -p mods -m zoo.animal.care/zoo.animal.care.medical.Diet the word Diet should be printed in the console
If the program runs properly, there should be no reason for vsc to mark an error in red, such as in the module-info.java file in the care folder that says that the package zoo.animal.care.medical does not exist. Your help please
attached screenshots
![]()
VS Code version: Code 1.84.0 (d037ac0, 2023-11-01T11:29:04.398Z) OS version: Windows_NT x64 10.0.22621 Modes:
System Info
Extensions (15)
A/B Experiments
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
示されている module-info.java、Task.java、HippoBirthday.java、Diet.java ファイルと、記載されている javac、jar、java コマンドを使って報告を再現してください。ターミナルでのコンパイルが成功することと、care/module-info.java に表示される赤い診断を比較し、その後、このモジュール構成を Java 拡張機能がどのように処理しているかを追跡してください。完了条件は、有効なパッケージが欠落していると報告されなくなること、またはその診断が想定されたものである場合に、問題について文書化された説明があることです。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java, vscode
- 領域
- developer-experience, tooling
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100
