Java 如何在intelliJ IDEA中运行netty DiscardServer和netty DiscardClient

Java 如何在intelliJ IDEA中运行netty DiscardServer和netty DiscardClient,java,intellij-idea,jar,netty,Java,Intellij Idea,Jar,Netty,我想知道如何在intelliJ IDEA中编译和运行netty DiscardServer和netty DiscardClient示例。我可以使用两个终端从命令行(在Ubuntu/linux中)编译和运行服务器和客户端,但我无法在IntelliJ IDEA中编译和运行它。我使用的是最新的稳定版本,即4.0.33() 从命令行编译并运行Discard server: 我提取了netty-all-4.0.33.Final-sources.jar的内容 已编译DiscardServer.java类:

我想知道如何在intelliJ IDEA中编译和运行netty DiscardServer和netty DiscardClient示例。我可以使用两个终端从命令行(在Ubuntu/linux中)编译和运行服务器和客户端,但我无法在IntelliJ IDEA中编译和运行它。我使用的是最新的稳定版本,即4.0.33()

从命令行编译并运行Discard server:
  • 我提取了netty-all-4.0.33.Final-sources.jar的内容
  • 已编译DiscardServer.java类: javac-cp.:netty-all-4.0.33.Final.jar io/netty/example/discard/DiscardServer.java
  • 已执行/运行服务器 java-cp.:netty-all-4.0.33.Final.jar io/netty/example/discard/DiscardServer
  • 注意:由于netty-all-4.0.33.Final.jar包含DiscardServer.class文件,所以我也可以提取jar文件的内容并运行 java-cp.:netty-all-4.0.33.Final.jar io/netty/example/discard/DiscardServer

    但是我想修改discardServer类

    我在IntelliJ IDEA中编译和运行代码所采取的步骤。
  • 我提取了netty-all-4.0.33.Final-sources.jar的内容
  • 从外部源导入的项目:使netty成为我的根源目录,但通过这样做,它无法将子目录识别为单独的模块,因此在编辑运行确认时,我只能指定一个主类。此外,由于netty-all-4.0.33.Final.jar没有作为netty根目录下的子目录放在lib目录中,因此它无法识别任何库
  • 我在这之后做了什么。 1.我提取了netty-all-4.0.33.Final-sources.jar的内容 2.将Example/discard目录复制到名为ServerClientExample的单独目录中。我创建了子目录:客户机和服务器,服务器和客户机源代码放在各自的目录中。这已经完成了,所以当我在IntelliJ IDEA中导入源代码时,它会将2个子目录识别为2个不同的模块。但是,这样做还需要更改每个源文件的包名,因为原始包的指定方式如下。io.netty.example.discard。我还向ServerClientExample添加了一个lib子目录,其中包含netty-all-4.0.33.Final.jar,这样IntelliJ IDEA就可以获取编译和运行服务器和客户端所需的外部库(jar文件)。这不管用


    感谢您的回复

    项目是否有pom?如果它不在源代码中,请签出github repo。如果你找不到一个POM或一个构建文件,那么你应该考虑这个项目被打破了,你应该继续前进。这个项目有一个POM吗?如果它不在源代码中,请签出github repo。如果你找不到一个POM或一个构建文件,那么你应该考虑这个项目被打破了,你应该继续前进。