Maven Jar Builder:无法找到或加载主类

我已经尝试了几天为我的muli-module maven项目创建一个可执行jar文件。 但是,当我尝试运行这个jar文件时,我得到“无法找到或加载主类src.main.java.com.domain.Mainclass”(为了我公司的隐私,我更改了域名和MainClass)

我搜索了几天,似乎没有明显的提示。

我的项目有一个主要的maven项目,可以下载所有依赖项(包装:POM)和几个模块项目(Packaging:Jar)。

一切似乎工作正常,所有文件都编译成类文件,但不知何故主类没有被添加到pom。

我的Pom文件插件:

 org.apache.maven.plugins maven-assembly-plugin 2.2-beta-4   jar-with-dependencies    com.domain.project.MainClass      package  single     

我使用的命令:mvn clean package,然后我进入目标文件夹并执行:java -jar jarfilename.jar

任何提示或帮助将是最受欢迎的!

编辑:

我当前的配置为每个模块创建了2个jar文件:

  • 项目名称-JAR与 – dependencies.jar
  • projectname.jar

当我使用我的主类导航到模块的目标文件夹时,我可以成功运行jar文件。 但是,当我尝试运行我的父maven项目的jar文件(包装:pom)时,我仍然得到同样的错误。 有谁知道为什么主jar文件找不到主类?

谢谢!

您不应该将src.main.java作为主类的包名称的一部分。 它只是默认maven项目文件夹结构约定的一部分。 您的配置应该是:

   com.domain.project.MainClass   

好像你有一个缺失的插件。 将波纹管添加到pom.xml文件中

 ` org.apache.maven.plugins maven-jar-plugin 2.6    true  yourclassnameKt     ` 

该插件将添加MANIFEST.mf文件,该文件将告诉Java运行时要执行哪个类。

还有另一个问题有同样的问题 – > Kotlin + Maven汇编:没有主要的清单属性

参考: https : //michaelrice.com/2016/08/hello-world-with-kotlin-and-maven/