いっぽんの猟銃のむこうに (DAIZOじいさんとGun)

ヌルめの技術メモとか。フリーランスやってます (http://acez.jp/)

2011-02-01から1ヶ月間の記事一覧

SVNのリビジョン番号をビルド時にアーカイブファイル内の特定ファイルに含める

ビルドしたwarファイルの中身がいつのリビジョンの奴か見れるようにしておきたい、 みたいなことを言われたときに。コマンドライン用のsvnをあらかじめ入れといて、以下をpom.xmlに追加。 <plugin> <artifactId>maven-antrun-plugin</artifactId> <executions> <execution> <phase>generate-resources</phase> <goals> <goal>run</goal> </goals> <configuration> <tasks> </tasks></configuration></execution></executions></plugin>

ejb内部のwar, jar等をアーカイブしない

以下のようにearのpom.xmlに trueを追記する。 <webModule> <groupId>test</groupId> <artifactId>test</artifactId> <contextRoot>/test</contextRoot> <bundleFileName>test.war</bundleFileName> <unpack>true</unpack> </webModule>こうすると.warとか.jarとかに固められないので中を見るときとか ちょっとは楽になるかもしれない。

ポート指定してJenkinsを起動する

ポートがデフォルトで重なる場合とか。ポート変更したいときとかに忘れるので。特にajpの方。 $ java -jar jenkins.war --httpPort=8888 --ajp13Port=8019

pom.xmlで共通のプロパティを定義する

定数定義みたいなことをしたい場合。propertiesをつかう。親のpom.xml (略) <packaging>pom</packaging> <name>Parent Project</name> <properties> <local.fix.version>1.0.0</local.fix.version> </properties> (略)で、子のpom.xmlで (略) <dependency> <groupId>local_libs</groupId> <artifactId>opencsv</artifactId> <version>${local.fix.version}</version></dependency>

ビルドした成果物にいらないライブラリが勝手に含まれる

大抵scopeが「compile」になってる。 「compileだからコンパイル時にだけ使われるんじゃねーの?」って思いがちだけど、 それをしたいなら「provided」を指定しないとダメ。 <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency>ぼけーっとしてるからか、僕だけなのか…

Test reports were found but none of them are new. Did tests run?  とかいわれる

時刻とかがNTPとかでそれなりに同期されててもこれが出るときは、 他の設定ファイル(POM.xml)の不具合を疑ったほうがいい。ぜんぜん関係ないはずのをコメントアウトしたらこのエラーが出た。 一度に一箇所ずつ直すのを徹底しないと大変なことになるかもしれ…

coberturaでカバレッジが二回走る

http://d.hatena.ne.jp/ssogabe/20091115/1258211831 とかにも書かれてて、どうも既存の問題っぽいのだけれど、ここに書かれてる 対策取ってもうまくいかなかった。要は mvn package と coberture:cobertura で二回JUnitテストが回ってしまうみたい。それで…

ある日突然mvn cobertura:cobertura does not work with Archiva repository set as mirror

$ mvn -e -X -U とかオプションつけてライブラリを更新すると直ったりした。にしてもMavenの中央リポジトリライブラリの仕組みはなんともびみょー。 たしかに便利なんだけどさー。なんかアクセスすげー遅いし。うーん。

標準出力関連の備忘録

いつも忘れちゃうんで。■標準出力と標準エラー出力の同時出力 $ ls -al > ls.log 2>&1■標準出力を画面出力と同時にファイルへ保存 $ ls -al | tee ls.log普段から使えば忘れないんだろうけどねえ。使いましょう。

login() takes exactly 1 argument (2 given)とか言われる

ドキュメント見てもどう考えても引数ふたつであってるだろう・・・と思ったらview.pyの関数名が def login(request):とかなってて再帰呼び出しになってた件。まぬけー。 名前つけるのってめんどくさいよなー。

CentOSにyumで簡単にGitを入れる

Debianならapt-getで一発なんだけど。いちいちコンパイルしたりとかは依存関係とかめんどくさいし。ってものぐさな人用に。RPMforgeリポジトリが古いかも。■ RPMForgeを導入 RPMforgeのGPGキーインストール # rpm --import http://apt.sw.be/RPM-GPG-KEY.dag…