Mavenの一般的な手順と一般的なエラー(Linux)

1.新しいLinuxプロジェクト

mvn archetype:generateし、コマンドラインのプロンプトでビルドするプロジェクトのgroupId、artifactId、およびバージョンを入力します

2.一般的なコマンド

  • mvn install(インストール):パッケージをローカルウェアハウスにインストールして、パッケージを他のローカルプロジェクトの依存関係として使用できるようにします。
  • mvn package(package):ソースコードがコンパイルされた後、適切な形式(JAR形式など)を使用して、コンパイルされたソースコードをパッケージ化します。
  • mvn clean:プロジェクトをクリーンアップします
  • mvn compile:プロジェクトのソースコードをコンパイルします
  • mvn test-compile:プロジェクトテストのソースコードをコンパイルします
  • mvn test(test):適切な単体テストフレームワークを使用して、コンパイルされたソースコードをテストします。
  • java -jar * .jar
  • java -cp * .jar *(クラス)

インストールとパッケージの違い:プロジェクトAはプロジェクトBに依存します。プロジェクトBがクリーンとパッケージのみを実行する場合、プロジェクトBのターゲットの下にパッケージ化されます。プロジェクトAを再度コンパイルすると、プロジェクトBが原因でコンパイルエラーが報告されます。インストールを実行しませんでした。したがって、パッケージはターゲットの下でのみパッケージ化され、installはパッケージ化されてローカルのMavenウェアハウスにインストールされます。依存関係のないパッケージの場合、2つの間に大きな違いはありません。

参照:Mavenパッケージとインストールの違い

3.実例

mvn archetype:generate

次の図に示すノードが停止し、プロジェクトのタイプを選択するように求められ(アーキタイプを選択)、Enterキーを直接押します(デフォルトは7:internal-> org.apache.maven.archetypes:maven-archetype-quickstart(アーキタイプサンプルのMavenプロジェクトが含まれています。))

ここに画像の説明を挿入

groupId:会社名

ArtifactId:プロジェクト名

バージョン:バージョン

パッケージ:パッケージ名

ここに画像の説明を挿入

新しいプロジェクトが完了すると、artifactIdがプロジェクトフォルダーの名前であり、packageがJavaでのフォルダーの名前であることがわかります。

ここに画像の説明を挿入

main / java / com / test / App.javaがメインクラスであり、内容は次のとおりです。

ここに画像の説明を挿入

mvn compileは現在のプロジェクトをコンパイルします、あなたはより多くのターゲット部分があることがわかります

ここに画像の説明を挿入

mvn installはjarパッケージにコンパイルされ、ターゲットの下に追加のjarパッケージがあることがわかります。

ここに画像の説明を挿入

java -jar target / com.test-1.jar、jarパッケージを実行し、メインクラスエラーを報告しません

ここに画像の説明を挿入

java -cp target / com.test-1.jar com.test.App、対応するクラスを直接実行し、正常に実行します。

ここに画像の説明を挿入

4.エラーの要約

4.1メインクラスをロードできません

分析:スタートアップクラスの欠如

解決策:pom.xmlに次のコンテンツを追加します

<build>
    <plugins>
        <!--添加maven插件-->
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>

            <!--添加自己的启动类路径!-->
            <configuration>
                <mainClass>com.test.App</mainClass>
            </configuration>

            <executions>
                <execution>
                    <goals>
                        <!--可以把依赖的包都打包到生成的Jar包中-->
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

4.2JNIエラーが発生する

jdkとjreのバージョンは同じであり、このエラーはNeo4jに接続するときに発生します。

ここに画像の説明を挿入

原因:未明

解決策:メインクラスを同時にロードすることはできません

おすすめ

転載: blog.csdn.net/MaoziYa/article/details/114270638