无法在其他计算机上执行Maven项目

时间:2017-04-18 15:08:00

标签: java maven plugins jar

我开始使用Maven,所以我尝试创建一个测试项目,以便在其他PC 中执行它。

我正在使用Shade Plugin因为我只想要一个文件来执行Compiler Plugin因为在我正在执行项目的PC中只有Java 6而在我的PC中我使用的是JRE 1.8和我相信我可以用它。

所以问题是当我执行项目时给出了一个无法找到主类的错误。

顺便说一下,在我创建项目的计算机上,即使在其他位置使用jar,也能完美地工作。

这是我的 POM文件

<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/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.company</groupId>
    <artifactId>Prueba</artifactId>
    <packaging>jar</packaging>
    <version>1.0-SNAPSHOT</version>
    <name>Prueba</name>
    <url>http://maven.apache.org</url>

    <developers>
        <developer>
            <name>Me</name>
            <organization>Company</organization>
            <organizationUrl>https://www.company.moon</organizationUrl>
        </developer>
    </developers>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.6.1</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.0.0</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <transformers>
                                <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>com.company.App</mainClass>
                                </transformer>
                            </transformers>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

</project>

我刚刚更改了我的名字和公司。

1 个答案:

答案 0 :(得分:0)

Promise p = task { try { while (true) { if (engineService.getFlag()) { print(someservice.data); }else{ break; } } } catch(Throwable t) { ... } } 基本配置用于<archive> <index> <manifest>。你在下面的代码中试试这个。

<configuration>