我一直在阅读RobertC.Martin的CleanCode,并看到了臭名昭著的声明:AvoidwordslikeManager,Processor,Data,orInfointhenameofaclass.所以,很自然地,我尝试分解-Info从我的一个类(class)名字中。现在,我看到了各种StackOverflow问题,询问在-Manager的情况下该怎么做或-Processor.我看到评论说他们想不出-Data的时间。将是一个很好的类名。嗯,在我看来,-Data和-Info似乎更难排除。特别是,例如在下面的类(class)中。我有一个Server类如下:publicclassS
我正在创建一个包含3个模块user、dept和account的示例应用程序。在我的用户模块中,我有一个主类并使用以下命令编译我的模块:javac-dtarget--module-source-pathsrc$(find-name"*.java")编译完成后执行如下命令运行:java-ptarget-mcom.user/com.user.info.Launcher运行java模块成功后的输出。但是当尝试使用jlink创建运行时图像时,图像创建成功但模块可执行脚本不存在。为了创建图像,我使用以下命令:jlink--module-path$JAVA_HOME/jmods:target--ad
在Java9中,您可以选择通过添加module-info.java将源目录打包为模块,它定义了它导出的事物包,以及它所依赖的其他模块。然而,一旦你这样做了,你必须在模块描述符中列出所有的依赖——并且依赖本身必须都是模块。因此,推而广之,如果您对单个源目录进行模块化,则必须对公司范围内的每个单个源目录进行模块化。此外,您不能在Java8或更早版本中定义模块,这意味着除了模块化每个Java源目录之外,您还必须同时将所有内容转换为Java9。如果您在一家拥有由许多不同项目共享的大量代码库的公司工作,这似乎是灾难性的。目前,我可以通过设置一堆编译器标志来避免定义模块来解决这个问题,但这似乎是一
我正在尝试使用jdk-9在代码下方运行,但在使用命令编译时遇到问题命令javac-dmods.\module-info.javacom\nirav\modi\Test.java错误.\module-info.java:1:error:class,interface,orenumexpectedmodulemodule1{}^1errormodule-info.javamodulemodule1{}测试.javapackagecom.nirav.modi;classTest{publicstaticvoidmain(Stringargs[]){System.out.println("He
背景系统订单创建成功之后需要发送订单创建成功的消息,但是今天突然遇到了如下的报错org.apache.rocketmq.client.exception.MQClientException:Norouteinfoofthistopic,TopicTestSeehttp://rocketmq.apache.org/docs/faq/forfurtherdetails.atorg.apache.rocketmq.client.impl.producer.DefaultMQProducerImpl.sendDefaultImpl(DefaultMQProducerImpl.java:610)ator
我想创建helloworldjava9应用程序并在intellijidea中启动它。现在我有以下结构:内部模块-info.java的内容:modulemy.module.Second{requiresmy.module.First;}外层模块-info.java的内容:modulemy.module.First{exportsmy.pack;}但是idea提示我的项目:Error:(1,1)java:toomanymoduledeclarationsfound我不明白为什么会这样,也不知道哪里出了问题。所以问题:我的问题是如何强制idea接受我的helloworld。附言乍一看,错误看
我有一个基本的SpringBoot应用程序。使用SpringInitializer,嵌入Tomcat,Thymeleaf模板引擎,并打包为可执行JAR文件。是一个带有SpringBoot的多模块项目,该项目将有3个模块。这里是父模块pom.xml4.0.0org.springframework.bootspring-boot-starter-parent1.5.3.RELEASEcom.tdkcloudtdk-cloud0.0.2-SNAPSHOTpomtdk-coretdk-batchtdk-weborg.springframework.bootspring-boot-starter
我正在尝试创建一个模块化的可执行jar文件,它可以使用java-p-m运行在Java9.0.1上。这在使用jarcfetest.jartest.Main-Cclasses/.创建jar时按预期工作,但抛出moduletestdoesnothaveaMainClassattribute,use-m/使用mvnpackage生成时和mvnassembly:single.这些Maven生成的jar仍然适用于java-ptest.jar-mtest/test.Main,并且所有jar都在类路径上使用java-jartest.jar.我用jarxftest.jar检查了jar内容,发现除了lis
我们已将log4jjar从log4j-api-2.7.jar更新为log4j-api-2.10.0.jar。我们在JBoss启动时收到警告(我们使用的是JBoss-EAP-7.0)。2018-09-0505:31:28,669WARN[org.jboss.as.server.deployment](MSCservicethread1-2)WFLYSRV0003:Couldnotindexclassmodule-info.classat/content/project.ear/shared/log4j-api.jar:java.lang.IllegalStateException:Unk
将Maven项目升级到Java9并添加模块描述符后,javac提示自动模块的传递依赖性[WARNING]/.../src/main/java/module-info.java:[3,35]requirestransitivedirectiveforanautomaticmodule重现问题的示例module-info.java:modulecom.example.mymodule{exportscom.example.mymodule.myexportedpackage;requirestransitivecom.google.common;}这个警告的意思已经很清楚了,这里是一些相关