两个模块 - info.java 在一个包中
two module-info.java in one package
我想在一个包中包含两个模块的项目工作。
有包 com.test,其中包括 test1 和 test2。
此代码未编译,因为:
错误:模块 'Java9Test'
中有多个模块信息文件
哪里不对?
test1 包含模块-info.java
module com.test.test1 {}
和Client.java
package com.test.test1;
import com.test.test2.Provider;
public Client {
public static void main(String[] args) {
Provider provider = new Provider();
System.out.printf(provider.getString(), "TestA");
}
}
和包 test2 其中包含
模块-info.java
module com.test.test2 {}
和Provider.java
package com.test.test2;
public class Provider {
public String getString(){
return "Hello, %s!";
}
}
抱歉,我是模块的新手 java9
编译器(或IDE)认为您只有一个模块。一个模块只能有一个模块描述符(module-info.java
)。
您可以尝试以下目录结构:
module1/
module-info.java
com/
test/
test1/
Client.java
module2/
module-info.java
com/
test/
test2/
Provider.java
每个 top-level module1
和 module2
目录都是模块目录,因此您将有 2 个模块。
第一个模块描述符
module module1 {
requires module2;
}
第二个模块描述符
module module2 {
exports com.test.test2;
}
我想在一个包中包含两个模块的项目工作。 有包 com.test,其中包括 test1 和 test2。 此代码未编译,因为:
错误:模块 'Java9Test'
中有多个模块信息文件哪里不对?
test1 包含模块-info.java
module com.test.test1 {}
和Client.java
package com.test.test1;
import com.test.test2.Provider;
public Client {
public static void main(String[] args) {
Provider provider = new Provider();
System.out.printf(provider.getString(), "TestA");
}
}
和包 test2 其中包含
模块-info.java
module com.test.test2 {}
和Provider.java
package com.test.test2;
public class Provider {
public String getString(){
return "Hello, %s!";
}
}
抱歉,我是模块的新手 java9
编译器(或IDE)认为您只有一个模块。一个模块只能有一个模块描述符(module-info.java
)。
您可以尝试以下目录结构:
module1/
module-info.java
com/
test/
test1/
Client.java
module2/
module-info.java
com/
test/
test2/
Provider.java
每个 top-level module1
和 module2
目录都是模块目录,因此您将有 2 个模块。
第一个模块描述符
module module1 {
requires module2;
}
第二个模块描述符
module module2 {
exports com.test.test2;
}