Java Maven包没有打包我的类
我使用maven将程序生成到JAR中,但每次运行它时,它都不会打包我创建的任何类。我查看了pom文件,并对mavan jar插件目标进行了一些更改,以指向Java Maven包没有打包我的类,java,maven,Java,Maven,我使用maven将程序生成到JAR中,但每次运行它时,它都不会打包我创建的任何类。我查看了pom文件,并对mavan jar插件目标进行了一些更改,以指向jar,但它仍然不断忽略我的类。以下是我的pom文件的外观: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema
jar
,但它仍然不断忽略我的类。以下是我的pom文件的外观:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>tmp</groupId>
<artifactId>tmp2</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<repositories>
<repository>
<id>dcm4che</id>
<url>http://www.dcm4che.org/maven2/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.4</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.4</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-audit</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-core</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-image</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-imageio</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-iod</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-net</artifactId>
<version>2.0.25</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<goals><goal>jar</goal></goals>
<phase>prepare-package</phase>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>DicomTesting.menu</mainClass>
</manifest>
</archive>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2.1</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>DicomTesting.menu</mainClass>
</configuration>
</plugin>
</plugins>
</build>
</project>
有人能告诉我我做错了什么吗
更新:以下是文件夹的外观:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>tmp</groupId>
<artifactId>tmp2</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<repositories>
<repository>
<id>dcm4che</id>
<url>http://www.dcm4che.org/maven2/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.4</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.6.4</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-audit</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-core</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-image</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-imageio</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-iod</artifactId>
<version>2.0.25</version>
</dependency>
<dependency>
<groupId>dcm4che</groupId>
<artifactId>dcm4che-net</artifactId>
<version>2.0.25</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.6</version>
<executions>
<execution>
<goals><goal>jar</goal></goals>
<phase>prepare-package</phase>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>DicomTesting.menu</mainClass>
</manifest>
</archive>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2.1</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>assemble-all</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<executions>
<execution>
<goals>
<goal>java</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>DicomTesting.menu</mainClass>
</configuration>
</plugin>
</plugins>
</build>
</project>
您进行了许多不必要的定制;移除它们。最有可能的是,您的问题是源文件不在
src/main/java
下,这是Maven希望找到源文件的默认位置。您可以通过设置sourceDirectory
元素来覆盖此位置。您可以在C:\temp\workspace\TrialTester>
中显示目录列表吗?Maven对这些东西要求严格,并且希望您的源文件位于\src\main\java
下。我添加了一张目录外观的图片like@bot你还有其他建议吗?我刚刚添加了sourceDirectory,但它仍然没有正确打包${basedir}/src/main/DicomTesting
打算将此作为一个答案发布,但这个问题还有一些其他原因。等待OP澄清是个好主意。在pom文件中什么是不必要的?而且,我试图将sourceDirectory添加到我的构建部分,但我不断遇到构建失败。。。