小编MrS*_*Sir的帖子

无法从module-info.java中找到模块

我在同一文件夹中有2个不同的项目:com.jdojo.addresscom.jdojo.person。第一个有一个简单的pojo类Address和一个module-info.java默认包装:

module com.jdojo.address {
    exports com.jdojo.address;
}
Run Code Online (Sandbox Code Playgroud)

这里没有错误。

com.jdojo.person项目中,我有一个Person使用上一个Address属性的类。的module-info.java

module com.jdojo.person {
    requires com.jdojo.address;
    exports com.jdojo.person;
}
Run Code Online (Sandbox Code Playgroud)

requires在行中有一个错误:

找不到模块:com.jdojo.address

NetBeans IDE Dev(Build 201708030001)IntelliJ IDEA 2017.2.1都存在此问题。

????com.jdojo.address
?   ????.idea
?   ?   ????inspectionProfiles
?   ????nbproject
?   ?   ????private
?   ????src
?       ????com
?           ????jdojo
?               ????address
????com.jdojo.intro
?   ????.idea
?   ?   ????inspectionProfiles
?   ?   ????libraries
?   ????build
?   ?   ????classes
? …
Run Code Online (Sandbox Code Playgroud)

java java-9

5
推荐指数
1
解决办法
4577
查看次数

如何从 ModuleReference 获取 Module 对象

使用代码:

ModuleFinder.of(Paths.get(path)).findAll() 
Run Code Online (Sandbox Code Playgroud)

我能够检索Set<ModuleReference>所有 .jar的一个path的一个。

我的下一步是Module从 a获取 aModuleReference但没有方法返回该值,我可以得到 aModuleDescriptor但即使这样也没有帮助。有没有办法做到这一点?

java java-9

5
推荐指数
1
解决办法
623
查看次数

Glassfish 5 无法与 Intellij 2017 2.4 一起使用

我是 Intellij ide 的新手,在 Intellij 2017 2.4 上运行 Glassfish 5 或任何先前版本时遇到问题。

选择后,New Project > Java Enterprise > Web Application我必须指定应用程序服务器,我在其中选择了 glassfish 5 的文件夹,jdk 设置为 1.8,java ee 设置为 7。到目前为止,一切顺利,没有错误,项目已创建。然后我在右上角的 GlassFish 5.0.0 旁边有一个灰色的“播放”图标,表示我必须对其进行配置,我单击Edit Configurations并打开“运行/调试配置”在此输入图像描述 一切看起来都很好,当我单击“播放”绿色按钮来启动服务器并运行项目时,我的项目名称:战争在部署下爆炸了,

[2017-09-26 08:47:57,836] Artifact testfornew:war exploded: Waiting for server connection to start artifact deployment...
Detected server admin port: 4848
Detected server http port: 8080
Exception in thread "main" java.lang.NullPointerException
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.initializeServiceLocator(AbstractModulesRegistryImpl.java:152)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.newServiceLocator(AbstractModulesRegistryImpl.java:144)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.createServiceLocator(AbstractModulesRegistryImpl.java:218)
at com.sun.enterprise.module.common_impl.AbstractModulesRegistryImpl.createServiceLocator(AbstractModulesRegistryImpl.java:224)
at com.sun.enterprise.module.single.StaticModulesRegistry.createServiceLocator(StaticModulesRegistry.java:88)
at com.sun.enterprise.admin.cli.CLIContainer.getServiceLocator(CLIContainer.java:217)
at com.sun.enterprise.admin.cli.CLIContainer.getLocalCommand(CLIContainer.java:255) …
Run Code Online (Sandbox Code Playgroud)

java glassfish intellij-idea

2
推荐指数
2
解决办法
8500
查看次数

如何在Python中的类中使用静态变量

class Cls:
    counter = 0
    def __init__(self, name):
        self.name = name
        self.counter += 1
    def count(self):
        return self.counter
Run Code Online (Sandbox Code Playgroud)

我正在学习python,我想要的是一个静态计数器,它计算类实例化的次数,但每次创建实例时counter都会重新创建并且count()函数总是返回1.我想要一些java中的东西看起来像这样

public class Cls {
    private static int counter = 0;
    private String name;
    public Cls(String name) {
        this.name = name;
        counter ++;
    }
    public static int count(){
        return counter;
    }
}
Run Code Online (Sandbox Code Playgroud)

python python-3.x

2
推荐指数
1
解决办法
818
查看次数

Numpy - 创建数组副本的多维数组

我想生成一个有序数字数组,然后将其乘以另一个数组:

[ [0,1,2,3,4,5] [0,1,2,3,4,5] [0,1,2,3,4,5] ... [0,1,2,3,4,5] ]
Run Code Online (Sandbox Code Playgroud)

我可以生成第一个 [0,1,2,3,4,5] nums = np.arange(0, 6),但是如果我乘以列表中的一个数字,它只会增加值 = [nums* 3] = [0,3,6,9,12,15]。我怎样才能做到这一点 ?

python arrays numpy multidimensional-array numpy-ndarray

2
推荐指数
1
解决办法
2404
查看次数

在java 9中创建模块项目的问题

我试图在教程之后使用Windows 10中的java命令设置一个基本的java项目.文件是

C:\Users\Talon\Desktop\java intellij\01j9\src\com.me.mymodule\module-info.java C:\Users\Talon\Desktop\java intellij\01j9\src\com.me.mymodule\com\me\mymodule\Main.java

和一个空文件夹C:\Users\Talon\Desktop\java intellij\01j9\mods\com.me.mymodule.

module-info.java

module com.me.mymodule {}
Run Code Online (Sandbox Code Playgroud)

Main.java

package com.me.mymodule;
public class Main {
    public static void main(String[] args) {
        System.out.println("Hello World from Module");
    }
}
Run Code Online (Sandbox Code Playgroud)

在'cd'进入C:\Users\Talon\Desktop\java intellij\01j9> 我应该进入的命令之后

javac -d mods/com.me.mymodule \ src/com.me.mymodule/module-info.java \ src/com.me.mymodule/com/me/mymodule/Main.java
Run Code Online (Sandbox Code Playgroud)

但它是为machintosh操作系统编写的,所以在windows中我尝试过

javac -d mods/com.me.mymodule;src/com.me.mymodule/module-info.java;src/com.me/mymodule/com/me/mymodule/Main.java
Run Code Online (Sandbox Code Playgroud)

javac -d mods\com.me.mymodule;src\com.me.mymodule\module-info.java;src\com.me\mymodule\com\me\mymodule\Main.java
Run Code Online (Sandbox Code Playgroud)

在两个我有javac:没有源文件.路径错了还是我应该输入不同的命令?

java java-9 java-module

1
推荐指数
1
解决办法
79
查看次数