#Mavenプロジェクトをコマンドで作成~Webアプリケーションの起動までの手順を紹介します。
#目次
- 1. Windows10にMavenをインストール
- 2. Mavenプロジェクトを作成
- 3. Eclipseにインポート
- 4. Javaのバージョン変更
- 5. Jarファイル生成
- 6. Webアプリケーション起動
#1.Windows10にMavenをインストール
別の記事で詳細に紹介しているので、そちらを参照ください。
MavenをWindows10にインストール
#2.Mavenプロジェクトを作成
rem Mavenプロジェクト生成コマンド
mvn archetype:generate
//中略
Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 1594 //Enter押下
Choose org.apache.maven.archetypes:maven-archetype-quickstart version:
1: 1.0-alpha-1
2: 1.0-alpha-2
3: 1.0-alpha-3
4: 1.0-alpha-4
5: 1.0
6: 1.1
7: 1.3
8: 1.4
Choose a number: 8:8 //8を入力
Define value for property 'groupId':sample //グループIDを入力
Define value for property 'artifactId':mavenSample //アーティファクトIDを入力
Define value for property 'version' 1.0-SNAPSHOT: : //未入力Enter押下
Define value for property 'package' mavenSample : : //未入力Enter押下
Confirm properties configuration:
groupId: sample
artifactId: mavenSample
version: 1.0-SNAPSHOT
package: mavenSample
Y: :Y //Yを入力
[INFO] ----------------------------------------------------------------------------
[INFO] Using following parameters for creating project from Archetype: maven-archetype-quickstart:1.4
[INFO] ----------------------------------------------------------------------------
[INFO] Parameter: groupId, Value: sample
[INFO] Parameter: artifactId, Value: mavenSample
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: package, Value: sample
[INFO] Parameter: packageInPathFormat, Value: sample
[INFO] Parameter: package, Value: sample
[INFO] Parameter: version, Value: 1.0-SNAPSHOT
[INFO] Parameter: groupId, Value: sample
[INFO] Parameter: artifactId, Value: mavenSample
[INFO] Project created from Archetype in dir: C:\work\mavenSample
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:38 min
[INFO] Finished at: 2020-05-10T23:56:44+09:00
[INFO] ------------------------------------------------------------------------
mavenSampleフォルダにプロジェクトファイルが生成されます。
#3.Eclipseにインポート
####3.1 build.gradleを編集します。
plugins {
id 'java'
id 'application'
id 'eclipse' //追加
}
####3.3 ソースを修正します。
・pom.xmlのプロパティにビルドする「Javaのバージョン」を追加します。//ダウンロードしたJavaのバージョンとあわせます。
・pom.xmlの依存関係に「spring-boot-starter-web」を追加します。
・pom.xmlの依存関係に「exec-maven-plugin」を追加します。
・build->pluginManagement->pluginsにマニフェストを追加します。
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8 </maven.compiler.target>
</properties>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.2.6.RELEASE</version>
</dependency>
<build>
<pluginManagement>
<plugins>
<!-- 中略 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>mavenSample.App.Main</mainClass><!-- 修正 -->
<addClasspath>true</addClasspath>
<addExtensions>true</addExtensions>
<classpathPrefix>lib/</classpathPrefix>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>mavenSample.App.Main</mainClass>
<addClasspath>true</addClasspath>
<addExtensions>true</addExtensions>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
<configuration>
<mainClass>mavenSample.App</mainClass>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
・App.javaを修正します。
package mavenSample;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication //追加
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class, args); //修正
}
}
・コントローラークラスを追加
package mavenSample.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class FrontController {
@RequestMapping({ "/", "/index" })
public String index() {
return "Hello World";
}
}
#4.Javaのバージョン変更
Eclipseで実行すると「UnsupportedClassVersionError」が発生することがあります。
「プロジェクトのプロパティ」->「Javaのビルドパス」->「JREシステムライブラリ」の「実行環境」を変更します。
※例では1.5 → 1.8に変更
MavenのJdkデフォルトバージョンは1.5のようですね。
#5.Jarファイル生成
# jarファイル生成コマンド
mvn package
mavenSample\target配下に「mavenSample-1.0-SNAPSHOT.jar」が生成されます。
#6.Webアプリケーション起動)
MavenでJavaを実行する。
# mvn実行コマンド
mvn exec:java
http://localhost:8080/indexにアクセスすると「Hello World」が表示されます。