OSSの追加方法(Java)
Eclipseでツールを使わずにOSSを追加する
OSSの使用するためには、使用したいOSSのjarファイルをクラスパスに追加する必要がある。
- 使用したいOSSのjarファイルをダウンロードする
- プロジェクトのルートにlibファイルを作成しそこにjarファイルを配置する
- eclipseでプロジェクトを右クリック⇒ビルドパス⇒ビルドパスの構成を押下
- 「ライブラリー」タブの「クラスパス」を選択し、「jarの追加」を選択する
- libファイルに配置したjarファイルを選択する
デメリット
- 新しく依存関係を追加したい時やバージョンを変更する度に、jarのダウンロード、クラスパスの追加を行う必要がある。
- 追加したいjarが依存しているjarがある場合、全部をダウンロードしてクラスパスに追加しないと正常に動作しない
ツールを使用する
Maven
Java用のプロジェクト管理ツール(ビルドツール)のこと。
Mavenでできること
pom.xmlに設定を記述すれば、いろんなことがビルドと一緒にできる
pom.xmlの書き方
<?xml version="1.0" encoding="UTF-8"?> <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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.5.5</version> <relativePath/> </parent> <groupId>jp.co.sample</groupId> <artifactId>sample</artifactId> <version>1.0.0</version> <name>sample</name> <description>Practice project for Spring Boot</description> <properties> <java.version>11</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
依存関係を追加する際にはこのpom.xmlのdependencyを追加していく。
追加した依存関係に依存するossも自動でインポートされる。
dependencyの書くフォーマットは以下のサイトでコピーできる。
https://mvnrepository.com/
コマンド
テストの実行
mvn test
mvn compile
jarファイル(warファイル)の作成
packageを実行すればcompile、test、packageのフェーズも実行される
mvn package
jarファイルをローカルリポジトリにインストールする
mvn install
ビルド生成物を削除する
mvn clean
Gradle
Gradleでできること
build.gradleに設定を記述すれば、いろんなことがビルドと一緒にできる
設定ファイルがgroovyという言語で書かれていて、Javaのプログラムも書ける。
build.gradleの書き方
plugins { id 'org.springframework.boot' version '2.5.4' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' } group = 'jp.co.sample' version = '1.0.0' sourceCompatibility = '11' repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter' testImplementation 'org.springframework.boot:spring-boot-starter-test' } test { useJUnitPlatform() }
タスク
テストの実行
gradlew test
コンパイル+テスト
gradlew build
jarファイル(warファイル)の作成
packageを実行すればcompile、test、packageのフェーズも実行される
gradlew jar
ビルド生成物を削除する
gradlew clean