4

Maven の使用に問題があります。Apache Flink プロジェクトがあり、サーバーで実行したいと考えていました。ローカルでは正常に実行されますが、サーバーでは次のエラーで中止されます。

java.lang.NoClassDefFoundError: org/apache/flink/examples/java/ml/util/LinearRegressionData

私のJavaプロジェクトでは、クラスをインポートしました

import org.apache.flink.examples.java.ml.util.LinearRegressionData;

そして、インポート時に正しいクラスを使用しました:

ここに画像の説明を入力

ビルド後、Jar ファイルを調べました。次のクラスが含まれていました。

ここに画像の説明を入力

/util/ フォルダーが完全に欠落しています。pom ファイルの依存関係セクションは次のようになります。

<dependencies>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-java</artifactId>
        <version>0.9.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-streaming-core</artifactId>
        <version>0.9.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-clients</artifactId>
        <version>0.9.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-table</artifactId>
        <version>0.9.0</version>
    </dependency>
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-runtime</artifactId>
        <version>0.9.0</version>
    </dependency>
</dependencies>

https://github.com/apache/flink/tree/release-0.9にあるリポジトリのパッケージ構成を見たとき、次の行を flink に追加できると思いました:

    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-examples</artifactId>
        <version>0.9.0</version>
    </dependency>

しかし、これらの依存関係は解決できません。クリーン インストールの実行時に Maven はエラーをスローしないため、これは依存関係の問題だと思います。Maven には、使用されているすべてのインポートが自動的に含まれると思いました。これを自分のサーバーで実行可能にするにはどうすればよいですか?

4

1 に答える 1