タグ: Maven

  • [Java]Spring Initializrで始めるウェブ開発

     Spring Bootのサンプルプログラムをつくってビルドしてみました
     OSはWindowsを使いました

     内容は Spring クイックスタートガイド に沿っています

    準備

     Javaが使えるようになっていることが必要です。JDKのセットアップの詳細はこちら↓に記載しています
    JDK (Java Development Kit) - [Windows]初めてApache Tomcatをセットアップ

     Maven, Tomcat, Spring Boot はインストール不要です

    Spring Initializrでひな形をつくります


     まずは Spring Initializr のサイト↓を開きます
    Spring Initializr

     次のような感じで設定します。
     Spring Boot のバージョンは、特に制約が無ければ括弧がないものの中で大きな数値を選びます。Packaging はウェブ用の『War』を選びます。Java のバージョンはお使いの環境にあわせます
     右側のDependencies で『Spring Web』を追加します

     設定が終わったら『GENERATE』ボタンを押します。ダウンロードが始まります

    ひな形を更新します

     ダウンロードしたひな形を展開します
     これからは、先の『Package name』に設定した値を『パッケージ名』、『Name』に設定した値を『ネーム名』と表記します
     展開したフォルダの中にある src\main\java\パッケージ名\ネーム名Application.java をメモ帳で開きます

    元はこんな感じです↓

    package パッケージ名;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class HelloApplication {
    
    	public static void main(String[] args) {
    		SpringApplication.run(HelloApplication.class, args);
    	}
    
    }

    追記したものはこんな感じになります↓ 太字の行を追加します

    package パッケージ名;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    @SpringBootApplication
    @RestController
    public class HelloApplication {
    
    	public static void main(String[] args) {
    		SpringApplication.run(HelloApplication.class, args);
    	}
    
    	@GetMapping("/hello")
    	public String hello(@RequestParam(value = "name", defaultValue = "World") String name) {
    		return String.format("Hello %s!", name);
    	}
    
    }

     ファイルを保存して閉じます

    ビルドします

    次の手順でビルドと動作確認ができます

    1. Windowsコマンドプロンプトを開きます
    2. ひな形の中にある pom.xml が置かれたフォルダへ移動します
    3. 『mvnw clean package spring-boot:run』コマンドを実行します
    4. 『… : Started HelloApplication in …』と表示されて画面が止まるまで待ちます(コマンドは終了しません)
    5. ブラウザを開きます
    6. http://localhost:8080/hello へアクセスします
    7. ブラウザに『Hello World!』と表示されます

     Windowsコマンドプロンプトを終わるときはキーボードから「Ctrl + C」キーを押します

     Windowsバッチをつくるとこうなります

    cd /d "%~dp0"
    call mvnw clean package spring-boot:run
  • [Java]Apache Mavenインストールからプロジェクト作成まで

     片仮名で「メーベン」とするのが日本語っぽいでしょうか。色々なライブラリを使ったJavaのプログラムをビルドするためにあるそうです

    ダウンロード

     こちら(Apache Maven のダウンロード – Apache Maven Project)から圧縮ファイルをダウンロードできます。

    インストール

     解凍したら任意のフォルダに保存します

     次にWindowsのシステム環境変数を設定します。
     [スタート]から[環境変数]を検索して、[システム環境変数の編集]を開きます。[システムのプロパティ]-[詳細設定]タブが開きますので、右下の[環境変数]ボタンを押します。

    Windows環境変数

     [Path]にMavenのフォルダの中の[bin]を追加します。例えば D:\webservice\maven\bin になります。

    確認

     確認のために、次のようにMavenのバージョンを表示してみましょう

    mvn -v

    settings.xml設定

     Mavenによって自動ダウンロードされるファイルが保存されるフォルダを作成します。次にsettings.xmlを更新します

    1. お好きな場所にフォルダを作成します
    2. Maven\conf\settings.xmlをメモ帳で開きます
    3. キーボード Ctrl + F キーで『<localRepository>』を探します
    4. 『<!–』から『–>』まではコメントなので、それよりも外にフォルダを指定します。次のような行を追加します↓
    <localRepository>D:\webservice\maven\repository</localRepository>

     これで設定は終わりです

    プロジェクト作成

    Spring Initializrでひな形をつくる

     Mavenには次のようなSpring Bootのアーキタイプがありますが、10年も更新されず放置されているようです

    3213: remote -> org.springframework.boot:spring-boot-sample-tomcat-archetype (Spring Boot Tomcat Sample)


     Spring Initializrで『Project』を『Maven』にして、ひな形をつくると良いでしょう

    Mavenでひな形をつくる

     流れは次のようになります

    1. Windowsコマンドプロンプトを開きます
    2. プロジェクトをつくるフォルダへ移動します
    3. mvnコマンドを実行します

    コマンドは次のようなものです↓

    cd /d "プロジェクトをつくるフォルダ"
    mvn -B archetype:generate "-DgroupId=グループ名" "-DartifactId=プロジェクト名"

    注意事項

    • グループ名に「-(ハイフン、マイナス記号)」を含めるとビルド時にエラーになります。1行目のハイフンのところで「;(セミコロン)」がないと言われます

    実行結果

    次のようにフォルダとファイルがつくられます↓

    プロジェクトをつくるフォルダ
      プロジェクト名フォルダ
        srcフォルダ
          mainフォルダ
            javaフォルダ
              グループ名フォルダ
                App.javaファイル
          testフォルダ
            javaフォルダ
              グループ名フォルダ
                AppTest.javaファイル
        pom.xmlファイル

    App.javaはこんな感じです↓ コメントを取り除いています

    package グループ名;
    
    public class App 
    {
        public static void main( String[] args )
        {
            System.out.println( "Hello World!" );
        }
    }

    AppTest.javaはこんな感じです↓ コメントを取り除いています

    package グループ名;
    
    import junit.framework.Test;
    import junit.framework.TestCase;
    import junit.framework.TestSuite;
    
    public class AppTest 
        extends TestCase
    {
        public AppTest( String testName )
        {
            super( testName );
        }
    
        public static Test suite()
        {
            return new TestSuite( AppTest.class );
        }
    
        public void testApp()
        {
            assertTrue( true );
        }
    }

    pom.xmlはこんな感じです↓

    <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/maven-v4_0_0.xsd">
      <modelVersion>4.0.0</modelVersion>
      <groupId>グループ名</groupId>
      <artifactId>プロジェクト名</artifactId>
      <packaging>jar</packaging>
      <version>1.0-SNAPSHOT</version>
      <name>プロジェクト名</name>
      <url>http://maven.apache.org</url>
      <dependencies>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>3.8.1</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
    </project>

    ビルド

     できたサンプルをビルドするには、プロジェクト作成時につくられたpom.xmlファイルがあるフォルダへ移動してから次のようにコマンドを入力します

    cd /d "プロジェクトをつくるフォルダ\プロジェクト名"
    mvn compile

    削除

     プロジェクトを削除するには、プロジェクト作成時につくられたpom.xmlファイルがあるフォルダへ移動してから次のようにコマンドを入力します

    cd /d "プロジェクトをつくるフォルダ\プロジェクト名"
    mvn clear