我正在尝试按照下面给出的步骤创建 Java9 的 HelloWorld 模块。
右键单击项目(即 com.hello)>新建>源文件夹>输入源文件夹名称(即com.hello)
- 右键单击源文件夹(即 com.hello)>新建>包>输入名称(与源文件夹名称相同,即 com.hello)
右击Source Folder(即com.hello)>New>File>输入文件名(模块的java9标准文件名是module-info.java)
module com.hello { exports com.hello; }
右键单击 Package(即 com.hello)>New>输入类名(即 HelloWorld)
package com.hello; public class HelloWorld { public static void main(String[] args) { System.out.println("Hello World"); } }
右键单击 HelloWorld>Run As>Java Application 它抛出
Error occurred during initialization of boot layer
java.lang.module.FindException: Module com.hello not found
PS:尝试后this solution我的项目结构如下所示
注意:我还注意到一件事。保存更改后。 eclipse (氧气)抛出
Errors occurred during the build. Errors running builder 'Java Builder' on project 'com.hello'. Unknown constant pool type 19
最佳答案
假设您正在使用 Eclipse Oxygen.1a (4.7.1a) Release 2017年10月11日发布 支持JPMS和Junit5 你可以适配如下-
当您创建一个新的 Java 项目时,您需要确保您的 com.hello
包和 module-info.java
位于 src
项目的文件夹。您可以在您的项目中移动它们以遵循完整的树形结构,如下所示:-
com.hello[project]
|
|-src
| |
| |-- com.hello[package]
| | |
| | |- HelloWorld.java [your class]
| |
| |--module-info.java
注意:- 如果您尝试创建基于 Maven 的项目(pom.xml
在您的结构中可见),您可能想关注 Maven in Eclipse: step by step installation 的答案.
关于java 应用程序不适用于 java9 和 eclipse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46741683/