LoginSignup
0
0

More than 5 years have passed since last update.

rpmのパッケージビルド時にJarファイルを再圧縮しない

Last updated at Posted at 2019-03-31

RPMビルド時にデフォルトであれば、以下のようにJarファイルを一度展開して再度圧縮します。

$ rpmbuild --define "debug_package %{nil}" -ba kusakari.spec 
・・・
+ /usr/lib/rpm/redhat/brp-python-hardlink
+ /usr/lib/rpm/redhat/brp-java-repack-jars
ファイルの処理中: kusakari-1.0-1.el7.centos.x86_64
・・・
+ exit 0

標準であれば、JarファイルはGradleなどでリポリトリから取得するべきですが
リポジトリが利用できない環境(セキュリティ区画でのファイル配置など)を想定しています。

サンプルファイル

ls -l /home/kusakari/work/kusakari/
-rw-rw-r-- 1 kusakari kusakari      16  3月 31 21:06 date.sh
-rw-r--r-- 1 kusakari kusakari 4756746  3月 31 21:06 deploy.jar
-rw-rw-r-- 1 kusakari kusakari      23  3月 31 21:06 test.sh
# jdkのjarファイルをサンプルとして使ってます

specファイル

kusakari.spec
Name:   kusakari
Version:    1.0
Release:    1%{?dist}
Summary:    test
Group:  group   
License:    GPLv3+
URL:        https://www.yahoo.co.jp/
Source0:    kusakari.tar.gz

%define __jar_repack %{nil} 
%description
%prep
%setup -n %{name}
%install
rm -rf %{buildroot} 
mkdir -p %{buildroot}/home/kusakari/target/
install -m 0755 test.sh %{buildroot}/home/kusakari/target/
install -m 0755 date.sh %{buildroot}/home/kusakari/target/
install -m 0755 deploy.jar %{buildroot}/home/kusakari/target/

%clean
rm -rf %{buildroot}

%files
/home/kusakari/target/test.sh
/home/kusakari/target/date.sh
/home/kusakari/target/deploy.jar

%doc
%changelog

ビルド
Jarのrepackがなくなりました。それに伴いビルドの時間も短くなりました。

$ rpmbuild --define "debug_package %{nil}" -ba kusakari.spec
+ /usr/lib/rpm/redhat/brp-python-hardlink
ファイルの処理中: kusakari-1.0-1.el7.centos.x86_64
・・・
+ exit 0

ビルド時間を短くでき、本オプションを入れておくべきだと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0