Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ビルドツールの話(202110社内勉強会)
Search
shimadamiyuki
October 21, 2021
150
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ビルドツールの話(202110社内勉強会)
月一で実施している社内勉強会の資料です(2021.10)
shimadamiyuki
October 21, 2021
More Decks by shimadamiyuki
See All by shimadamiyuki
20240912 JJUGナイトセミナー
mii1004
0
270
STORES決済の裏側のはなし(Code Polaris 色んなエンジニアLT大会)
mii1004
0
320
オブジェクト指向がわからない(202201社内勉強会)
mii1004
0
200
たのしい情報収集(202112社内勉強会)
mii1004
0
130
リファクタリング?(202111社内勉強会)
mii1004
0
120
OpenAPI Generator使ってみる(Java女子部ハロウィンLT)
mii1004
0
100
Hello Spring(202109社内勉強会)
mii1004
0
140
StreamAPI, Lambdaと仲良くなる(202108社内勉強会)
mii1004
0
160
Javaはじめのいっぽ(202107社内勉強会)
mii1004
0
170
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
400
How to train your dragon (web standard)
notwaldorf
97
6.8k
The Curious Case for Waylosing
cassininazir
1
460
Thoughts on Productivity
jonyablonski
76
5.3k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
490
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
350
[SF Ruby Conf 2025] Rails X
palkan
2
1.3k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Bash Introduction
62gerente
615
220k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
440
Transcript
ビルドツールの話 10⽉チーム会
Q. Javaのビルドツールといえば︖ Maven︕ Gradle︕ どちらかお好きな⽅で、くらいの空気感だと思います。
この前登場したspring initializerでも MavenとGradleのどっちかを選べます。
ビルドツールの役割 l 依存するライブラリをダウンロードする l Javaのソースコードをコンパイルする l テストを実⾏する l パッケージングする(jar, war・・・)
など
Q. ライブラリって︖ ⾊々なアプリで共通で使うようなプログラムを、 再利⽤できるようにまとめたもの
何気なく書いてるそのimportも 誰かが作ってくれたライブラリを使っているのかも
アプリケーションでライブラリを使っている =ライブラリに依存している アプリケーション ライブラリA ライブラリB ライブラリAに依存するよ ライブラリBに依存するよ ライブラリCに依存するよ ・・・ というのがライブラリの依存関係
ビルドツールなしでライブラリを 管理するのは⼤変 • ⼤量のjarファイルをやりとりしないといけないとか • ライブラリのバージョンがごちゃごちゃになるとか • こっちのPCでは動くのにあっちでは動かないとか
MavenやGradleを使えば・・・ <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.22</version> <scope>provided</scope> </dependency> compileOnly group: 'org.projectlombok',
name: 'lombok', version: '1.18.22' 定義ファイルに依存するライブラリやバージョンを書いて おけば、Maven/Gradleが必要なjarをダウンロードしてき てくれる
Q. リモートリポジトリって︖ Maven/Gradleがライブラリをダウンロードしにいく場所。 (Gradleでも)Mavenセントラルリポジトリが主に使われていて、よく使うよ うなライブラリは⼤体揃ってる https://repo1.maven.org/maven2/ ライブラリの検索サイトもあるよ https://mvnrepository.com/ 会社によっては社内にリモートリポジトリを⽤意してあることもあるので、そ の場合は定義ファイルで使うリポジトリを指定するよ
Q. もっと詳しく YouTubeでJJUGのナイトセミナーの録画を⾒てね JJUGナイトセミナー「Maven / Gradle⼊⾨」2020/12/11 https://jjug.doorkeeper.jp/events/114832 https://www.youtube.com/watch?v=es0eOiP82R4
11/21(⽇) は JJUG CCC コミュニティ主催のJavaカンファレンス(年2回開催) https://ccc2021fall.java-users.jp/ 国内で開催されるJavaのカンファレンスでは最⼤規模で、 初⼼者向けのセッションも結構やってるよ