0

こんにちは、maven を使用して Java プロジェクトを構築するのは初めてなので、問題の解決策は非常に簡単であると確信しています。Eclipse Maven プラグインをインストールし、Maven プロジェクトを作成しました。このプロジェクトをパッケージ化し、実行可能な jar ファイルとして配布したいと考えています。しかし、私が走るとき

mvn package

jar ファイルを実行しようとすると、次のエラーが表示されます。

 Exception in thread "main" java.lang.NoClassDefFoundError: main/Formatter

この特定のファイルの 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/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>GROUP</groupId>
<artifactId>pcap.csv.xml</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
     <dependency>
        <groupId>net.sf.opencsv</groupId>
        <artifactId>opencsv</artifactId>
        <version>2.0</version>
    </dependency>
  </dependencies>
</project>

どんな助けでも大歓迎です。

4

1 に答える 1

2

jar プラグインでメイン クラスを指定する必要があります。

<build>
<plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <configuration>
            <archive>
                <manifest>
                    <addClasspath>true</addClasspath>
                    <mainClass>main.Formatter</mainClass>
                </manifest>
            </archive>
        </configuration>
    </plugin>
</plugins>
</build>

単一の jar を配布する場合は、単一の jarifier (fatjar、jarjar、onejar など) を使用する必要があります。

于 2013-01-25T00:52:24.040 に答える