2010-04-29

xamppの設定(mysql の文字コード)

C:\xampp\mysql\bin 内に存在する「my.ini」を編集.mysqldの直下に下記文字列を追加.
[mysqld]
default-character-set = utf8
skip-character-set-client-handshake

同様にmysqldump, mysqlの直下にそれぞれ下記文字列を追加.
[mysqldump]
default-character-set=utf8
[mysql]
default-character-set=utf8

確認するには,コマンドプロンプトから mysql –u root でmysqlを起動し,show variables like "char%";と入力.

===== 設定前 =====
+--------------------------+----------------------------+
| Variable_name                 | Value                                |
+--------------------------+----------------------------+
| character_set_client         | latin1                               |
| character_set_connection  | latin1                              |
| character_set_database    | latin1                               |
| character_set_filesystem   | binary                              |
| character_set_results        | latin1                              |
| character_set_server        | latin1                               |
| character_set_system       | utf8                                 |
| character_sets_dir            |                                       |
+--------------------------+----------------------------+

===== 設定後 =====
+--------------------------+----------------------------+
| Variable_name                 | Value                               |
+--------------------------+----------------------------+
| character_set_client         | utf8                                 |
| character_set_connection  | utf8                                 |
| character_set_database    | utf8                                 |
| character_set_filesystem   | binary                               |
| character_set_results       | utf8                                  |
| character_set_server        | utf8                                 |
| character_set_system       | utf8                                 |
| character_sets_dir            |                                       |
+--------------------------+----------------------  -----+

2010-04-21

[memo] host-run 使用時のエラー

SunSPOTの開発ですが,Sunの製品ってこともあり,Net Beansが推奨されていますが,デファクトスタンダードはEclipseかなぁと思い,開発はWindows + Eclipseで進めていた自分です.

今まで,Sun SPOTのエンドノード側のプログラムを書いていたときは,Eclipseでコードを書いて,コマンドプロンプトでant deploy run コマンドを実行して,問題なかったけど,ホストアプリケーションの方でささった.

Sun SPOTのプログラムと同様に,Eclipseでコードを書いて,コマンドプロンプトでant host-compileを実行後,ant host-runを実行すると

-do-host-run:
     [java] java.lang.NoClassDefFoundError: squawk/application/Startup
     [java] Caused by: java.lang.ClassNotFoundException: squawk.application.Startup
     [java]     at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
     [java]     at java.security.AccessController.doPrivileged(Native Method)
     [java]     at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
     [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
     [java]     at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
     [java]     at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
     [java]     at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
     [java] Could not find the main class: squawk.application.Startup.  Program will exit.
     [java] Exception in thread "main"

BUILD FAILED
C:\SunSPOT\sdk\ant\host-run.xml:35: Java returned: 1

のようなエラーが・・・コチラのサイトに書かれている症状と全く同じ.

Eclipseだと生成されない「build.properties」を作成したら問題解決.build.xmlと同じフォルダに以下のように記述したbuild.propertiesを作成し,ant host-compile,ant host-runすれば,無事にホストアプリケーションが動いてくれます.

main.class=org.sunspotworld.SunSpotHostApplication

↑は,SunSPOTのsdkディレクトリの下にあるDemos/CodeSamples/SunSpotHostApplicationTemplateの場合.

main.class=パッケージ名.main関数を持つクラス名

のように,すればOK.

Sun SPOT, antに関しては早稲田大学のコチラのサイトが役に立ちました.

2010-04-16

[memo] Sun SPOT build.xml

build.xml に記載されているのは,おそらくデフォルトだと↓みたいな感じ.

<property name="user.properties.file" value="build.properties"/>
    <property file="${user.home}/.sunspot.properties"/>
    <import file="${sunspot.home}/build.xml"/>

で,.sunspot.propertiesっていうファイルがどこに有るかといえば,C:\Documents and Setting\<user>にある.

まとめると
user.home = C:\Documents and Setting\<user>
sunspot.home = build.xmlのある場所
になるかと.


ビルドする際に,パッケージ毎に.sunspot.propertiesを設定したければ,build.xmlを
    <property file="${sunspot.home}/.sunspot.properties"/>
    <import file="${sunspot.home}/build.xml"/>
のように変更し,build.xmlと同じ場所に,.sunpot.propertiesのファイルを作ればOK.