• Like
  • Save
Nseg20120929
Upcoming SlideShare
Loading in...5
×
Uploaded on

 

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,293
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Ubuntuで構築 する開発環境 Part2 hiro345@SSS(G)
  • 2. 自己紹介● hiro345 twitter: @hiro345 blog: http://www.sssg.org/blogs/hiro345/ ● 執筆  @IT ... Java, Eclipse, Android, C 日経Linux ... Java, Dart, Cloud 日経ソフトウェア ... Java Java World, WEB+DB Press など
  • 3. とり急ぎ用意するならUbuntu● apt-get で何でも簡単にインストールできる● プログラミング言語の開発環境インストール も簡単にできる● 端末で入力したコマンドから、インストール するパッケージを教えてくれる。前回は、Ruby/JRuby・Java・Pythonなどをインストールし、Eclipse, NetBeansなどの統合開発環境もインストールした。
  • 4. 開発支援環境● ビルドツール Apache Maven● チケット管理 Redmine● 継続的統合 Jenkins
  • 5. Apache Maven● Javaのプロジェクト管理ソフト● POM(Project Object Model)● Apache Maven のサイトからダウンロードして インストール http://maven.apache.org/● Ubuntuでは apt-get でインストール可能。 mavenだとMaven 3、maven2だとMaven 2 がイ ンストールできる。 $ sudo apt-get install maven
  • 6. できること● ビルドやレポートやドキュメントの生成を管理できる● Mavenでは、あるプロジェクトに必要となるライブラリの設定、ビルドに関する 情報、テストとレポートに関する情報をpom.xmlというXMLファイルへ記述す る。● Mavenのmvnコマンドを使うと、pom.xmlの指定に従って処理が実行できる。● Mavenのセントラルリポジトリから依存関係のあるファイルをダウンロードし て、ローカルリポジトリ(通常は$HOME/.m2)へ保存し、そのライブラリを参 照しながらコンパイルをして目的とするバイナリファイルを生成できる。
  • 7. MavenのリポジトリMaven セントラルリポジトリ Maven ローカルリポジトリ $HOME/.m2/repository $ mvn archetype:generate ダウンロード $ mvn compile $ mvn test $ mvn site $ mvn javadoc:javadoc インストール $ mvn package $ mvn install
  • 8. Mavenプロジェクト$ mvn archetype:generate(略)Choose a number or apply filter (format: [groupId:]artifactId, case sensitive contains): 216:Choose org.apache.maven.archetypes:maven-archetype-quickstart version:1: 1.0-alpha-12: 1.0-alpha-23: 1.0-alpha-34: 1.0-alpha-45: 1.06: 1.1Choose a number: 6:(略)quickstart/1.1/maven-archetype-quickstart-1.1.pom (2 KB at 37.7 KB/sec)Define value for property groupId: : org.sssg.soft.example.mavenDefine value for property artifactId: : ExampleDefine value for property version: 1.0-SNAPSHOT: :Define value for property package: org.sssg.soft.example.maven: :Confirm properties configuration:groupId: org.sssg.soft.example.mavenartifactId: Exampleversion: 1.0-SNAPSHOTpackage: org.sssg.soft.example.maven Y: : Y
  • 9. 生成されるディレクトリとファイル . └── Example ├── pom.xml └── src ├── main │ └── java │ └── org │ └── sssg │ └── soft │ └── example │ └── maven │ └── App.java └── test └── java └── org └── sssg └── soft └── example └── maven └── AppTest.java
  • 10. コンパイル、テスト$ mvn compile$ mvn test└── target ├── classes │ └── org │ └── sssg │ └── soft │ └── example │ └── maven │ └── App.class ├── surefire ├── surefire-reports │ ├── TEST-org.sssg.soft.example.maven.AppTest.xml │ └── org.sssg.soft.example.maven.AppTest.txt └── test-classes └── org └── sssg └── soft └── example └── maven └── AppTest.class
  • 11. ALMinium● ALM(Application Lifecycle Management)と Redmineの合金(..nium)という意味から https://github.com/alminium/alminium● 簡単にインストールできる● 複数プロジェクト対応● 複数メンバで利用するGitリポジトリを簡単に 用意できる
  • 12. ALMiniumに同梱される Redmineプラグイン● Backlogs スクラム開発のサポート● Hudson Plugin Jenkins/Hudsonとの連携● Code Review コードレビュー支援● Redcarpet Wiki Formatter GitHubのMarkdown Wiki フォーマットを利用● MSProjects MS Projectのファイルをインポート● XLS export Excelでチケットを出力● Git Branch Hook Gitのブランチでの作業をチケットに連 動させます
  • 13. ALMiniumインストール● git cloneして、smeltスクリプト実行するだけ$ git clone https://github.com/alminium/alminium.git$ cd alminium; sudo bash smelt.sh */opt/alminium にインストールされる *インストールが終了するまで、結構時間がかかる *Apache2, MySQL, Rubyなどが自動インストールされる *専用マシンを用意した方がいいだろう *Redmineのエラーがでることがある。とりあえずエラー  となるプラグインはディレクトリを移動してはずす redmine_drafts plugin requires Redmine ["2.1.0"] or higher but current is 2.0.3.stable (Redmine::Plugin RequirementError)
  • 14. ALMinium設定● http://localhost/ へアクセス● ユーザ admin でログイン。初期パスワードは最初にアク セスしたページに記載されている。変更しておくのがよい● ユーザ追加(user001)● プロジェクト追加(maven001)。Gitリポジトリを使うと指 定すると、自動でGitリポジトリが作成される● プロジェクトのメンバへユーザ追加● リポジトリの確認 $ git clone http://user001@localhost/git/maven001 $ cd maven001; vi readme.txt $ git add readme.txt; git commit -am “init” $ git push origin master
  • 15. Jenkins ● ソフトウェア開発時のビルド/テストを継続 的に実施することを強力にサポート ● インストールも簡単。Ubuntuだと下記$ wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add-$ sudo apt-get update; sudo apt-get install jenkins ● http://jenkins-ci.org/
  • 16. Jenkins設定● http://localhost:8080/ へアクセス● プラグイン Git Plugin をインストール● ALMiniumで、maven001プロジェクトへアクセスできるJenkins用ア カウントを追加● 新しいジョブを追加。Gitを利用すると指定, Poll SCMもチェック http://jenkins:jenkins@localhost/git/maven001● Git hook ... /var/opt/alminium/git/maven002/hooks/post-receive #!/bin/sh /opt/alminium/bin/alm-sync-scm /usr/bin/wget --spider http://localhost:8080/job/maven002/polling● jenkinsユーザについて、Git global設定 $ sudo su - jenkins $ git config --global user.email "jenkins@localhost.localdomain" $ git config --global user.name "jenkins ubuntu"
  • 17. 知っておきたいディレクトリ● ALMinium – 本体:/opt/alminium – Gitリポジトリ:/var/opt/alminium/git/maven002● Jenkins – 本体:/usr/share/jenkins/jenkins.war – ワークスペース: /var/lib/jenkins/jobs/maven002/workspace
  • 18. まとめ● そろそろ Apache Maven に慣れよう● ALMiniumを使うとアジャイル開発がしやすい環 境が手に入る● Jenkinsを使って開発時の作業について、自動化 することができる