Eclipseとの連携
EclipseでMaven Eclipse Plug-inを使ってMaven2が操作できる。
> mvn archetype:create -DgroupId=mydomain.myproj -DartifactId=MyJar > cd MyJar MyJar> mvn eclipse:eclipse
WARタイプのプロジェクトを作成する場合は、最初のコマンドを以下に。
> mvn archetype:create -DgroupId=mydomain.myproj -DartifactId=MyWar -DarchetypeArtifactId=maven-archetype-webapp
Trac
単なるBTSでなくて複合的なサーバらしいので敬遠してた。ただ、Bugzillaのセットアップがそんなに面倒ならいっそTracを構築してみることにする。
[Python] Win版日本語対応Pythonのインストール
TracはPythonが必要。Tracのサイトに「2.4はダメよ」と断ってあるので2.3を。
- 配布元>Welcome to Python.org
- 日本語なサイト>http://www.python.jp/Zope/
日本語なサイトにhttp://www.python.jp/Zope/download/pythonjpdistを発見したので、ありがたくこちらを使用。2.3.4
[ClearSilver] ClearSilverのインストール
- 配布元>ClearSilver
Tracの要件として
With python-bindings (./configure --with-python=/usr/bin/python)
なんて書いてあるが、ClearSivlerのダウンロードの記述されたURLに置いてあるreadme.txtを見ると
clearsilver-0.9.14.win32-py2.3.exe : *p3* clearsilver-0.9.14 + patch for python binding (http://groups.yahoo.com/group/ClearSilver/message/452) *p4* Python 2.3 (official binaries for Windows) *p5* mingw 3.3.1 (mingw special 20030804-1) (the one included with Dev-Cpp 4.9.9.0) * using cygwin for chain tools (not MSYS)
とあるので安心してインストール
[PostgreSQL]
ダウンロードのリンクに[postgresql-8.1.3-1-ja.zip]という日本語化バイナリがあったので、ありがたくインストール。
Subversion
すでにインストール済みなので、svn-win32-1.3.0のみ。
ダウンロードして、展開したファイルからpython/下の2つのフォルダを${Python}\Lib\site-packagesにコピー
[mod_python]
Apache2上で動かしたいのでmod_pythonのインストールとセットアップ
Win32版バイナリを求めてリンクを辿ってmod_python-3.2.8.win32-py2.3.exeをダウンロード
インストーラを起動すると、Pythonの場所とApache2の場所を聞かれるので指定。
インストール完了後に、${A{pache}/conf/httpd.confを開いて以下を追加。
LoadModule python_module modules/mod_python.so <Location /trac> SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracEnvParentDir "D:/WEB-Server/share/trac" PythonOption TracUriRoot /trac </Location>
ここでは、「D:/WEB-Server/share/trac」が下記のTracインストール先として指定している。つもり
注:この指定は恐らく間違ってます。後日訂正します。
httpd.confの設定はココを参考に。
の所感
とりあえず立ち上がったので、隣に座っているパダ・ワンとイロイロいじってみる。
まず最初に
- 分かりにくい!
やっぱりBTSなら、直近のアイテムなり更新情報なりが最初に目に付いて欲しかったんだけど。今後、チームなメンバに押し付けるには、拒否反応が予想されるなぁ。
- 項目が多い=自由度が高い?
案件を登録するのに入力項目が多い。つまりは自由度が高いってことだろうけど、まだ得たいの知れない状況で使うには戸惑う。これはメンバが新規参入したときにも同じことだろう。社内に広めるのも難しいなぁ。
- システム設定が不明
運用後に、どこをどう変えれば良いのか見つからない。ビルド前にpropertiesファイルで指定すればできそうだが、再ビルドするのが面倒。
- anonymousのメール配信を止めれないかな
anonymousにもメールアドレスがあり、変なところに飛ばないよう自分宛にしてる。このために"お試し"で作ったプロジェクト(モジュール)からバンバン飛んでくる。設定を見ても必須項目になってるので、止めれない?
scarabのインストール
scarab.tigris.orgから1.0.b20をダウンロード。
展開したファイルに「INSTALL」というテキストファイルがあるので、読めば大体わかる。
あらかじめ、ネット検索して日本語なサイトも見つけてあったので、これも参考に。
なんだ、バイナリリリースぢゃないのか...
まぁ、WEBアプリなので当たり前っちゃぁ当たり前。
maven1.xとANTの2種類の手段があるらしいが、mavenは思いっきり2.xを使用中で別途インストールするのも面倒なので、ここではANTで。
およそ以下の手順
- minimal.propertiesファイルをbuild.propertiesとしてコピー
- 設定を修正
- ビルドとDBの創成
- デプロイ
設定を設定
コピーしたbuild.propertiesを見ると大体の見当が付いた。あとは、フルセットだと言われているproject.propertiesと見比べて足りないのを足していった。
設定値が「**GENERATED**」となっている箇所があるが、これはこのままでデフォルト値を入れてくれるらしい。
メールサーバ
メールを配信するためのSMTPサーバを指定
- system.mail.host=
- 会社のネットワークに居るので、誤射メールの場合に管理者から怒られそう。以下の項目でScarabから発信するメールのFrom:欄を指定することができるらしい。
- scarab.email.domain=
- scarab.email.default.fromName=
MySQLへのアクセス設定
この時点で専用アカウントやDBインスタンスは無くてもいいらしい
- scarab.database.username=(scarabにした)
- scarab.database.password=
- scarab.database.admin.username=(DB CREATE権限のあるアカウント)
- scarab.database.admin.password=
MySQLの日本語入力の指定
フォームなどの入力日本語が再表示時に文字化けてしまったので、以下を追加。
- scarab.database.url.extension.mysql = useUnicode=true&characterEncoding=utf8
(scarab.database.url.extension=**GENERATED**の下に)
メールのエンコード指定
使ってみて気づいたのが、MySQL設定と関係あるのか、メールのエンコードがUTF8になっている。これでは8bitなのでSMTPの経路によっては文字化けに。
http://scarab-ja.sourceforge.jp/cgi-bin/hiki.cgi?%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB#l6に従って以下を追加。
- scarab.email.encoding=iso-2022-jp
自身のURLの指定
これも後から気づいて修正したものだが、メール配信される承認や許可の本文に記載されるURLが"localhost"になってしまっている。以下の項目をしていることで解消。
- scarab.http.domain=
ビルドとDB創成
cd 展開したフォルダ/build ant
でできる。
これで配布物に含まれるTomcatへのデプロイまでやってしまうが、build.xmlを見る限りデプロイのdependsが複数のtargetで構成されているので、これが簡単。
DB創成は、この後で以下のコマンド。
ant -Dskip.seed.data=true create-db
イロイロ試していたために、設定とビルドを何度も繰り返したが、この場合は毎回生成物を削除してからやり直さなければならないっぽい。
ant clean-all
Java5環境の場合
構築環境がJava5だったので、そのままビルドすると警告が。気持ち悪いのでbuild/build.xmlを修正
<javac srcdir="${src.java.dir.scarab}" destdir="${build.dest.scarab}" debug="on" source="1.4" ←追加 deprecation="off" optimize="off">
日本語化の修正
http://scarab-ja.sourceforge.jp/cgi-bin/hiki.cgi?%A5%ED%A1%BC%A5%AB%A5%E9%A5%A4%A5%BAによると、
※ 注意: scarab 1.0 b20 に含まれるリソースバンドルファイルは古いため、そのまま使用するといくつかのページで例外が発生してしまいます(例: 共通属性の設定画面)。これを回避するには最新のリソースバンドルを入手して使用してください。
だそうなので、素直に従う。
指示されたURLからファイルをダウンロードし、デプロイした先のwebapps\scarab\WEB-INF\classes\に上書きした。あるいは、ビルド前にD:\TestWork\scarab-1.0-b20\src\conf\classes\に上書きしても行けそう。