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つの間に大きな違いはありません。
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に接続するときに発生します。
原因:未明
解決策:メインクラスを同時にロードすることはできません