Jon*_*art 5 java packaging classnotfound maven
我已经尝试了几天为我的muli-module maven项目创建一个可执行jar文件.但是,当我尝试运行这个jar文件时,我得到"无法找到或加载主类src.main.java.com.domain.Mainclass"(为了我公司的隐私,我更改了域名和MainClass)
我已经搜索了几天,似乎没有任何明显的提示可行.
我的项目有一个主要的maven项目,它下载了所有的依赖项(包装:POM)和几个模块项目(Packaging:Jar).
一切似乎工作正常,所有文件都编译成类文件,但不知何故主类没有被添加到pom.
我的Pom文件插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-4</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
<archive>
<manifest>
<mainClass>com.domain.project.MainClass</mainClass>
</manifest>
</archive>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)
该命令我使用:MVN清洁包,然后我cd到目标文件夹,并做到:Java的罐子jarfilename.jar
任何提示或帮助将是最受欢迎的!
编辑:
我当前的配置为每个模块创建了2个jar文件:
当我使用我的主类导航到模块的目标文件夹时,我可以成功运行jar文件.但是,当我尝试运行我的父maven项目的jar文件(带有打包的那个:pom)时,我仍然得到相同的错误.有谁知道为什么主jar文件找不到主类?
谢谢!
Nil*_*lsH 10
您不应该将其src.main.java作为主类的包名称的一部分.它只是默认maven项目文件夹结构约定的一部分.您的配置应该是:
<archive>
<manifest>
<mainClass>com.domain.project.MainClass</mainClass>
</manifest>
</archive>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28466 次 |
| 最近记录: |