SlideShare une entreprise Scribd logo
1  sur  29
つながるJavaとTFS
~   いつ使うの?   今でしょう!!   ~
自己紹介
•   HN:ぶらっく(@__Black)※広島在住
    ぶらっくの技術メモ
    http://blackssi.cocolog-nifty.com/blog/

•   金融系業務パッケージ担当SE
•   TFS使い始めてまだ2年ぐらい?
TFSは.NET専用?
いえいえ、そんなことはありません。
○Microsoft Source Code Control Interface
 (MSSCCI)
 Visual SourceSafe(VSS)互換インターフェイス
 VSSが使用できる環境ならだいたい適用可能
 VB6(SP6)/VC++(SP6)/Access2007/
 PowerBuilder11.5/VS.NET 2003など
※VSS互換ですので、使用できる機能は限定的
TFSは.NET専用?
○Team Explorer Everywhere(TEE)
 Eclipse/コマンドからTFSにアクセス
 Eclipseでは、VSのチームエクスプローラーと
 ほぼ同機能を実現


○Team Foundation Server Build Extensions
 ビルドエージェントでAnt/Marven/JUnitの
 実行をサポート
本日のレシピ
Team Foundation Server 2012
Java             ほとんどOSS!!
Eclipse
Ant
JUnit
Jacoco
FindBugs
CheckStyle
本日のお題目
Visual StudioとTFSを使っていれば
普通にできることをやってみます。
      バージョン管理
   自動テストとカバレッジ
        静的解析
   継続的インテグレーション
    (ゲートチェックイン)
JavaでTFSを使うための構成例

 •   TFSサーバ/ビルドサーバ
      Windows Server 2012
 •   クライアント
      Windows 8+Eclipse



      ビルドサーバ       TFSサーバ   クライアント
構築概要

 OSインストール
 TFSインストール
Java関連インストール
チームプロジェクト作成
  ビルド定義作成
構築概要

 OSインストール
 TFSインストール
Java関連インストール
チームプロジェクト作成
  ビルド定義作成
インストールレシピ
○TFSサーバ
 .NET Framework 3.5 SP1
   (役割と機能の追加)
 SQL Server 2012
 TFS with Update1(アプリケーション層)
 ※インストール時は「詳細」で
インストールレシピ
○ビルドサーバ
 TFS with Update1(ビルドサービス)
 TFS Build Extensions
 JDK 1.7
 Ant 1.8.4
 JUnit 4.1
 FindBugs 2.0.1
 CheckStyle 5.6
 Jacoco 0.6.1
インストールレシピ
○クライアント
 Eclipse(Juno)
 TEE with Update1

 JDK/JUnit/ EclEMMA/FindBugs/
 CheckStyle
   →クライアントでも個別に確認できるように

 Team Explorer(Visual Studio Shell)
 1台だけでもかまいません
   →ビルド定義を編集するときに使用します。
インストールレシピ
○注意点
 ・ビルドサーバをTFSサーバと分けることが
  できるのはAD環境だけ
構築概要

 OSインストール
 TFSインストール
Java関連インストール
チームプロジェクト作成
  ビルド定義作成
プロジェクト作成
○TFSチームプロジェクト
 チームエクスプローラーで
 普通に作成してください
 (選択するプロセステンプレートは
  Scrum, Agile, CMMIどれでもOKです)
○Eclipse Javaプロジェクト
 (たぶん)普通に作成してください
とりあえず、チェックイン
○チームエクスプローラーから
 TFSチームプロジェクトに接続
○Eclipseプロジェクトで
 「チーム」-「プロジェクトの共用」
 リポジトリー・タイプとして
 「Team Foundation Server」を選択
構築概要

 OSインストール
 TFSインストール
Java関連インストール
チームプロジェクト作成
  ビルド定義作成
作成するビルド定義
○Ant用ビルド定義ファイル(build.xml)
○TFS用ビルド定義
Build.xmlの作成
ほぼ通常通り作成してください。

注意点は「フォルダ構成」
TFSのビルドで使用するフォルダを使用すること
→Ant実行時にTFSから環境変数が設定されるので
 これを使用します。

 BinariesRoot:ビルド生成物格納フォルダ
   →このフォルダに格納されたファイルが
     共有フォルダに自動展開されます。
フォルダ構成
 ・JavaProject1
  TFSチームプロジェクト名
 ・BuildJava1
  TFSビルド定義名
 ・bin
  先ほどの「BinariesRoot」
 ・src
  Build.xml(Ant)上での
  Rootフォルダ
Build.xmlの作成
○一口メモ
 Ant「失敗」の定義を作成しておく
  TFSのビルドを「失敗」と認識させるには、
  Antを失敗させる必要があります。
  例:各ツールのいづれかがエラーを
     検知したら、Antを失敗させる
Build.xmlの作成
Build.xmlの作成
Build.xmlの作成
○Jacoco実行結果ファイル名の指定
 無指定だと、カバレッジ取得ファイルは
 「BuildType」(TFSBuild.projの保存場所)に
 出力されるが、レポート作成時は「src」を
 参照するのでエラーになる
 →coverageタスクで「destfile=“jacoco.exec”」
   を指定する
TFS用ビルド定義の作成
Build.xmlをチェックイン後、「Eclipseの」
チームエクスプローラーからビルド定義を
作成します。

○一口メモ
 AntのTargetを指定したい時には
 TFSBuild.projを変更し、
 TFSのビルド定義でTarget名を
 指定できるようにする方法があります。
TFS用ビルド定義の作成




※この編集はVisual Studio Shellのみ可能です
TFS用ビルド定義の作成
これだけで・・・
○Eclipseのチームエクスプローラーから
 ビルドが実行できます。
 (チェックイン時/定刻ビルドも可能)
○「ゲートチェックイン」を使えば、
 リポジトリ内のソースコードを綺麗に
 保てます。
 (テストが通らない/ソースが汚い状態で
  あれば、チェックインされません!)
その他
○VSのチームエクスプローラーとほぼ同じ操作で
 EclipseからTFSが使えます。
○Antのビルド定義にTFS用の特殊な設定は不要
○.NETとかNative C++との混在であれば
 なお素敵
 →言語ごとにリポジトリを分ける必要がない

Contenu connexe

Tendances

Tendances (18)

TFS超入門。いつやるの。今でしょ
TFS超入門。いつやるの。今でしょTFS超入門。いつやるの。今でしょ
TFS超入門。いつやるの。今でしょ
 
Go azure tfs_service
Go azure tfs_serviceGo azure tfs_service
Go azure tfs_service
 
Team Foundation Server入門
Team Foundation Server入門Team Foundation Server入門
Team Foundation Server入門
 
PowerShell DSC と連携して監視を効率化してみる
PowerShell DSC と連携して監視を効率化してみるPowerShell DSC と連携して監視を効率化してみる
PowerShell DSC と連携して監視を効率化してみる
 
Nano Server First Step
Nano Server First StepNano Server First Step
Nano Server First Step
 
PowerShell 5.0 で広がる運用管理の世界
PowerShell 5.0 で広がる運用管理の世界PowerShell 5.0 で広がる運用管理の世界
PowerShell 5.0 で広がる運用管理の世界
 
Introducing Windows Terminal
Introducing Windows TerminalIntroducing Windows Terminal
Introducing Windows Terminal
 
vSphere環境での自動化とテスト
vSphere環境での自動化とテストvSphere環境での自動化とテスト
vSphere環境での自動化とテスト
 
PowerShell DSC 入門
PowerShell DSC 入門PowerShell DSC 入門
PowerShell DSC 入門
 
2013.6.18 NemakiWare & CmisSync ワークショップ
2013.6.18 NemakiWare & CmisSync ワークショップ2013.6.18 NemakiWare & CmisSync ワークショップ
2013.6.18 NemakiWare & CmisSync ワークショップ
 
Windows PowerShell 5.0 と Windows Server vNext の管理
Windows PowerShell 5.0 と Windows Server vNext の管理Windows PowerShell 5.0 と Windows Server vNext の管理
Windows PowerShell 5.0 と Windows Server vNext の管理
 
それでも僕はユニットテストを書きたい - Pester powered by PowerShell
それでも僕はユニットテストを書きたい - Pester powered by PowerShellそれでも僕はユニットテストを書きたい - Pester powered by PowerShell
それでも僕はユニットテストを書きたい - Pester powered by PowerShell
 
PowerShell DSC と Linux
PowerShell DSC と LinuxPowerShell DSC と Linux
PowerShell DSC と Linux
 
[MR09] デスクトップ アプリをストアから配布するための A to Z
[MR09] デスクトップ アプリをストアから配布するための A to Z[MR09] デスクトップ アプリをストアから配布するための A to Z
[MR09] デスクトップ アプリをストアから配布するための A to Z
 
Windows10の展開手法
Windows10の展開手法Windows10の展開手法
Windows10の展開手法
 
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみるAlfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
Alfresco勉強会#31 alfresco 5.0にウイルススキャン機能を実装してみる
 
PowerShell 5.0 JEA (Just Enough Administration) First Step
PowerShell 5.0 JEA (Just Enough Administration) First StepPowerShell 5.0 JEA (Just Enough Administration) First Step
PowerShell 5.0 JEA (Just Enough Administration) First Step
 
Visual studio online and Agile
Visual studio online and AgileVisual studio online and Agile
Visual studio online and Agile
 

Similaire à つながるJavaとTFS

Visual studio 2012で始めるVisual Studio ALM
Visual studio 2012で始めるVisual Studio ALMVisual studio 2012で始めるVisual Studio ALM
Visual studio 2012で始めるVisual Studio ALM
Kaoru NAKAMURA
 
2012/02/25 ヒーロー島 TFS はじめの一歩
2012/02/25 ヒーロー島 TFS はじめの一歩2012/02/25 ヒーロー島 TFS はじめの一歩
2012/02/25 ヒーロー島 TFS はじめの一歩
__Black
 

Similaire à つながるJavaとTFS (20)

Java de TFS
Java de TFSJava de TFS
Java de TFS
 
つながるjavaとTFS ぱーと2
つながるjavaとTFS ぱーと2つながるjavaとTFS ぱーと2
つながるjavaとTFS ぱーと2
 
Team foundation serverを振り返る
Team foundation serverを振り返るTeam foundation serverを振り返る
Team foundation serverを振り返る
 
Lt 20130302 1
Lt 20130302 1Lt 20130302 1
Lt 20130302 1
 
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
チーム×ツール Team Foundation Server & Service 共感しActionできる開発基盤 アルティメイタム【デブサミ 2013 ...
 
Team foundation serverの新しいビルド
Team foundation serverの新しいビルドTeam foundation serverの新しいビルド
Team foundation serverの新しいビルド
 
開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成
開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成
開発キックオフ時にマネージャが行うべき11のこと ~Visual Studio Online & TFS 使い始めと HOME 画面の構成
 
Visual studio 2012で始めるVisual Studio ALM
Visual studio 2012で始めるVisual Studio ALMVisual studio 2012で始めるVisual Studio ALM
Visual studio 2012で始めるVisual Studio ALM
 
【#VSUG DAY】Team Foundation Server を乗りこなすコツ教えます
【#VSUG DAY】Team Foundation Server を乗りこなすコツ教えます【#VSUG DAY】Team Foundation Server を乗りこなすコツ教えます
【#VSUG DAY】Team Foundation Server を乗りこなすコツ教えます
 
Application Platform としての Windows Server 2019
Application Platform としての Windows Server 2019Application Platform としての Windows Server 2019
Application Platform としての Windows Server 2019
 
Team Foundation Serverで出てくるキーワード
Team Foundation Serverで出てくるキーワードTeam Foundation Serverで出てくるキーワード
Team Foundation Serverで出てくるキーワード
 
2013/02/23ヒーロー島 こんな開発からあんな開発へ
2013/02/23ヒーロー島 こんな開発からあんな開発へ2013/02/23ヒーロー島 こんな開発からあんな開発へ
2013/02/23ヒーロー島 こんな開発からあんな開発へ
 
Team Foundation Server/Visual Studio Onlineアップデート(2015/07/22)
Team Foundation Server/Visual Studio Onlineアップデート(2015/07/22)Team Foundation Server/Visual Studio Onlineアップデート(2015/07/22)
Team Foundation Server/Visual Studio Onlineアップデート(2015/07/22)
 
ADO.NET Entity Framework
ADO.NET Entity Framework ADO.NET Entity Framework
ADO.NET Entity Framework
 
2012/02/25 ヒーロー島 TFS はじめの一歩
2012/02/25 ヒーロー島 TFS はじめの一歩2012/02/25 ヒーロー島 TFS はじめの一歩
2012/02/25 ヒーロー島 TFS はじめの一歩
 
20130203 oss-db-lpi
20130203 oss-db-lpi20130203 oss-db-lpi
20130203 oss-db-lpi
 
20130203 OSS-DB Exam Silver 技術解説無料セミナー
20130203 OSS-DB Exam Silver 技術解説無料セミナー20130203 OSS-DB Exam Silver 技術解説無料セミナー
20130203 OSS-DB Exam Silver 技術解説無料セミナー
 
Pex を試してみよう!
Pex を試してみよう!Pex を試してみよう!
Pex を試してみよう!
 
Visual Studio 2012 Native Debugger Feature
Visual Studio 2012 Native Debugger FeatureVisual Studio 2012 Native Debugger Feature
Visual Studio 2012 Native Debugger Feature
 
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
[CEDEC2017] UE4プロファイリングツール総おさらい(グラフィクス編)
 

Plus de __Black

Plus de __Black (9)

ワークアウトから学んだPDCAのとりかかり方
ワークアウトから学んだPDCAのとりかかり方ワークアウトから学んだPDCAのとりかかり方
ワークアウトから学んだPDCAのとりかかり方
 
バージョン管理の先にあるもの
バージョン管理の先にあるものバージョン管理の先にあるもの
バージョン管理の先にあるもの
 
Xamarinとhockey app
Xamarinとhockey appXamarinとhockey app
Xamarinとhockey app
 
Xamarinアプリ、作ったそのあと・・・
Xamarinアプリ、作ったそのあと・・・Xamarinアプリ、作ったそのあと・・・
Xamarinアプリ、作ったそのあと・・・
 
Application insights
Application insightsApplication insights
Application insights
 
Connect2015概要
Connect2015概要Connect2015概要
Connect2015概要
 
Tfsの中のお宝を探そう
Tfsの中のお宝を探そうTfsの中のお宝を探そう
Tfsの中のお宝を探そう
 
リリース対象どーれだっ??
リリース対象どーれだっ??リリース対象どーれだっ??
リリース対象どーれだっ??
 
開発環境を全部カソウ化!!
開発環境を全部カソウ化!!開発環境を全部カソウ化!!
開発環境を全部カソウ化!!
 

Dernier

Dernier (12)

論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

つながるJavaとTFS