Google OpenRTBのビルド方法のメモ
README.mdのBUILDING NOTESの情報ではうまく行かなかった部分もあるため備忘録として
準備
- Windows 10
- Maven 3.3.9(すでに入っていたバージョンなのでこの時点での最新ではない)
- JDK1.8.0_121
windowsとpowershellで実行したがlinuxやmacでもそうそう変わらないはず
リポジトリからクローンする
> git clone https://github.com/google/openrtb.git
> cd openrtb
ビルド
ビルド時に問題になるのはprotocのバージョンである
それぞれのバージョンが依存しているprotocol bufferに対応したprotocを用意する必要がある
1.10.compatくらいまでのバージョンではprotocのバージョンは2.6.1でなければならない
現時点での最新の1.3.0ではprotocは3.2.0でないとビルドできない
protocは以下のURLからダウンロードする
https://github.com/google/protobuf/releases
バージョン3.2.0なら以下のもの
https://github.com/google/protobuf/releases/download/v3.2.0/protoc-3.2.0-win32.zip
解凍してbinフォルダに有るprotoc.exe
をパスが遠た場所に配置してコマンドラインからprotoc
コマンドを実行できるようにしておく
1.10.compatをビルドする方法
1.1.0.compatに切り替える
> git checkout -b 1.1.0.compat refs/tags/1.1.0.compat
protocのバージョンを確認する
> protoc --version
libprotoc 2.6.1
```
ビルドする
```
> mvn install -e
```
生成物
```
openrtb\openrtb-core\target\openrtb-core-1.1.0.compat.jar
```
## 1.30をビルドする方法
1.30に切り替える
```
> git checkout -b 1.3.0 refs/tags/1.3.0
```
protocのバージョンを確認する
protoc --version
libprotoc 3.2.0
ビルドする
mvn install -e
生成物
openrtb\openrtb-core\target\openrtb-core-1.3.0.jar
## jarファイルの利用
生成されたjarファイルは
# 今後の新バージョンに対応するには?
Maven Repositoryから利用したいバージョンの依存関係を見てそれが利用しているprotobuf-javaのバージョンに合わせたprotocを利用してビルドすれば良いはず
https://mvnrepository.com/artifact/com.google.openrtb/openrtb-core