Java程序和jar在我的电脑上工作,但在其他人的电脑上不工作
我今天无意中发现了这个问题,Java程序和jar在我的电脑上工作,但在其他人的电脑上不工作,java,maven,jar,Java,Maven,Jar,我今天无意中发现了这个问题,jar包含了程序使用的所有必要的lib(我使用的是mvn clean compile assembly:single),这个POM配置: <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compi
jar
包含了程序使用的所有必要的lib(我使用的是mvn clean compile assembly:single
),这个POM配置:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
<configuration>
<finalName>${project.artifactId}-${project.version}</finalName>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>fully.qualified.MainClass</mainClass>
</manifest>
</archive>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
你的pom.xml中有什么样的依赖关系?补充说帖子上的信息可能是因为你打包罐子的方式,可能是因为你的路径变量与其他人的路径变量不同,也许你打包了你在罐子里读到的文件?@RoelStrolenberg我怎么能检查?我是这样打包jar的:有时候,JVM无法在另一个jar中找到某些资源,比如依赖jar。为了克服这个问题,您可以构建一个包含所有必需类的胖jar,将其扁平化为一个jar文件。您可以自己完成这项工作,也可以使用sbt assembly或sbt onejar等工具来完成这项工作。
</dependencies>
<dependency>
<groupId>joda-time</groupId>
<artifactId>joda-time</artifactId>
<version>2.9.3</version>
</dependency>
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.8.1</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.2.2</version>
</dependency>
</dependencies>