vim7.3をインストールした
仕事ではJava+Subversionでの開発が多いですが、そろそろGitとかHTML5とかの知識もつけないとこれからは生き残れないと思った。
Zencodingとかもあるので、まずはvimをmac標準でインストールされているものをバージョンアップすることにした。
su port search vim port install vim
無事、インストール完了。バージョンは、7.3.107。
今日は、もう遅いので寝ます。
Rubyで時刻の差を求めるには?
s = Time.local(2009, 12, 17, 22, 36, 56) e = Time.local(2009, 12, 18, 5, 1, 51) (e - s).to_i / 60 => 384 # 384分 = 6時間24分
参考情報
Time#to_i --- to_i --- tv_sec 起算時からの経過秒数を整数で返します
Log4jで複数Javaアプリから同一ログファイルに書き込むことができるか?
業務で同一ファイルに対して複数のバッチプログラムからメッセージを出力する要件が出そうなので、実験してみた。
以下のサンプルコードで、無事に複数Javaアプリからファイルへの書き込みができた。
サンプルコード
import org.apache.log4j.Logger;
public class LogClient {
public static final Logger logger = Logger.getLogger(LogClient.class);
private String name;
public static void main(String[] args) {
String name = args[0];
LogClient client = new LogClient(name);
client.execute();
}
public LogClient(String name) {
this.name = name;
}
public void execute() {
logger.info("プログラムを開始します");
for (int i = 0; i < 20; i++) {
logger.info(String.format("<%s> 値=%d", name, i));
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
logger.info("プログラムを終了します");
}
}
起動用バッチファイル
@set BASE=. @set CLASSPATH=.\bin @set CLASSPATH=%CLASSPATH%;.\lib\log4j-1.2.13.jar java LogClient %1
ログ出力結果
2010-03-16 09:23:49,812 INFO [main] LogClient - プログラムを開始します 2010-03-16 09:23:49,812 INFO [main] LogClient -値=0 2010-03-16 09:23:50,312 INFO [main] LogClient - 値=1 2010-03-16 09:23:50,812 INFO [main] LogClient - 値=2 2010-03-16 09:23:51,062 INFO [main] LogClient - プログラムを開始します 2010-03-16 09:23:51,062 INFO [main] LogClient - 値=0 2010-03-16 09:23:51,312 INFO [main] LogClient - 値=3 2010-03-16 09:23:51,562 INFO [main] LogClient - 値=1 2010-03-16 09:23:51,812 INFO [main] LogClient - 値=4 2010-03-16 09:23:52,062 INFO [main] LogClient - 値=2 2010-03-16 09:23:52,312 INFO [main] LogClient - 値=5 2010-03-16 09:23:52,562 INFO [main] LogClient - 値=3 2010-03-16 09:23:52,812 INFO [main] LogClient - 値=6 2010-03-16 09:23:53,062 INFO [main] LogClient - 値=4 2010-03-16 09:23:53,312 INFO [main] LogClient - 値=7 2010-03-16 09:23:53,562 INFO [main] LogClient - 値=5 2010-03-16 09:23:53,812 INFO [main] LogClient - 値=8 2010-03-16 09:23:54,062 INFO [main] LogClient - 値=6 2010-03-16 09:23:54,312 INFO [main] LogClient - 値=9 2010-03-16 09:23:54,562 INFO [main] LogClient - 値=7 2010-03-16 09:23:54,812 INFO [main] LogClient - 値=10 2010-03-16 09:23:55,062 INFO [main] LogClient - 値=8 2010-03-16 09:23:55,312 INFO [main] LogClient - 値=11 2010-03-16 09:23:55,562 INFO [main] LogClient - 値=9 2010-03-16 09:23:55,812 INFO [main] LogClient - 値=12 2010-03-16 09:23:56,062 INFO [main] LogClient - 値=10 2010-03-16 09:23:56,312 INFO [main] LogClient - 値=13 2010-03-16 09:23:56,562 INFO [main] LogClient - 値=11 2010-03-16 09:23:56,812 INFO [main] LogClient - 値=14 2010-03-16 09:23:57,062 INFO [main] LogClient - 値=12 2010-03-16 09:23:57,312 INFO [main] LogClient - 値=15 2010-03-16 09:23:57,562 INFO [main] LogClient - 値=13 2010-03-16 09:23:57,828 INFO [main] LogClient - 値=16 2010-03-16 09:23:58,062 INFO [main] LogClient - 値=14 2010-03-16 09:23:58,328 INFO [main] LogClient - 値=17 2010-03-16 09:23:58,562 INFO [main] LogClient - 値=15 2010-03-16 09:23:58,828 INFO [main] LogClient - 値=18 2010-03-16 09:23:59,062 INFO [main] LogClient - 値=16 2010-03-16 09:23:59,328 INFO [main] LogClient - 値=19 2010-03-16 09:23:59,562 INFO [main] LogClient - 値=17 2010-03-16 09:23:59,828 INFO [main] LogClient - プログラムを終了します 2010-03-16 09:24:00,062 INFO [main] LogClient - 値=18 2010-03-16 09:24:00,562 INFO [main] LogClient - 値=19 2010-03-16 09:24:01,062 INFO [main] LogClient - プログラムを終了します
「Application does not specify an API level requirement!」のエラーが出る

- 作者: 江川崇,竹端進,山田暁通,麻野耕一,山岡敏夫,藤井大助,藤田泰介,佐野徹郎
- 出版社/メーカー: アスキー・メディアワークス
- 発売日: 2009/07/01
- メディア: 大型本
- 購入: 20人 クリック: 469回
- この商品を含むブログ (59件) を見る
身長と体重からBMIを計算するサンプルを作っているところですが、実行するとEclipseのコンソールに赤字で以下のようなエラーメッセージが表示されました。
WARNING: Application does not specify an API level requirement!
Device API version is 3 (Android 1.5)
エラーメッセージで検索してみると、同様のメッセージが出ている人を発見。さらに、解決方法も書いてあった!!
http://d.hatena.ne.jp/skelton_boy/20091007
原因は、マニフェストファイルに妥当なプラットフォームバージョンのAPIレベルを指定する必要があるらしい。
早速、AndroidManifest.xmlを以下のように修正したところ、エラーメッセージが表示されなくなりました。
めでたし、めでたし。。。
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mamezou.android.bmicalc"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".BMICalculatorActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="3" /> <== これを追加
</manifest>
S2DaoTestCaseで使うエクセルで日付を書くときの注意点
readXlsAllReplaceDb等を使ってエクセルファイルでデータベースを初期化する場合
- セルの書式設定は日付にする
- セルの値は、シングルクォート無しで「2007/0801 12:31:50」のように入力する
検索結果やINSERT後の期待値をエクセルで指定する場合
- セルの書式を文字列にして、「'2007-08-01 00:00:00.0」とミリ秒まで入力する