<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tipset &#187; SunSPOT</title>
	<atom:link href="http://hasumi.info/~h2/tag/sunspot/feed/" rel="self" type="application/rss+xml" />
	<link>http://hasumi.info/~h2</link>
	<description>MacやiPhone/iPod Touch関連のTipsを書くハズが発散してるページ</description>
	<lastBuildDate>Thu, 04 Mar 2010 16:52:15 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Sun SPOT Manager Toolでハマる</title>
		<link>http://hasumi.info/~h2/2008/12/11/sun-spot-manager-tool%e3%81%a7%e3%83%8f%e3%83%9e%e3%82%8b/</link>
		<comments>http://hasumi.info/~h2/2008/12/11/sun-spot-manager-tool%e3%81%a7%e3%83%8f%e3%83%9e%e3%82%8b/#comments</comments>
		<pubDate>Thu, 11 Dec 2008 06:49:45 +0000</pubDate>
		<dc:creator>h2</dc:creator>
				<category><![CDATA[PC]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[SunSPOT]]></category>

		<guid isPermaLink="false">http://hasumi.info/~h2/?p=560</guid>
		<description><![CDATA[Sun SPOT Manager Toolは，ワンクリックでSun SPOTの開発環境を構築してくれる非常にありがたいツールなのですが・・・
便利さ故に見事にハマったのでメモ
問題は，LeopardでAppleのJava [...]]]></description>
			<content:encoded><![CDATA[<p>Sun SPOT Manager Toolは，ワンクリックでSun SPOTの開発環境を構築してくれる非常にありがたいツールなのですが・・・<br />
便利さ故に見事にハマったのでメモ</p>
<p>問題は，LeopardでAppleのJava for Mac OS X 10.5 Update 2でJava SE 6 (64bit) を使用している場合に起こります</p>
<p>Manager ToolはSDKやDemo，NetBeans用のプラグインなどに加えて，SquawkというVMをインストールしてくれるのですが，VMなので一部アーキテクチャに依存する部分があって，同じLeopardでもIntelとPPCで違ってきます</p>
<p>Intel MacでJava SE 6を使っているとPPCと認識されるようで，PPC版のSquawkが入ってしまいます</p>
<p>SDKやツールのほとんどがJavaで書かれているので最初気づきませんでしたが，Sun SPOTのエミュレータを使おうとしたときに，<code>"Java for ppc cannot run in this configuration." </code>というエラーが発生します</p>
<p>fileコマンドを実行すると，<code>Mach-O executable ppc</code>とかいわれてビックリ！！</p>
<p>Squawkを入れ替えようとして，ソースを落としてきてビルドしようとしたのですが，SquawkのビルドもJava SE 6では通らず，J2SE 5.0でビルドする必要がありました</p>
<p>ビルドして，プロパティを書き換えて一応入れ替えてみたものの，エンディアンが違うと怒られるし，JNIのライブラリがあるので結局あきらめて再インストールすることに・・・</p>
<p>ただ，SDKだけを入れ直せばよくてツールもよくできているので簡単です</p>
<p>手順は以下の通り</p>
<ol>
<li>J2SE 5.0に切り替えます</li>
<li>FinderとかでSDKを入れたフォルダをリネーム</li>
<li>SPOT ManagerのSDKsタブを開いてRefreshしてリネームを反映</li>
<li>右側のAvailable SDKsからほしいバージョンを選んでインストール</li>
</ol>
<p>今度は，バッチリ<code>Mach-O executable i386</code>です</p>
<p>ちなみにインストール後は，Java SE 6に戻しても大丈夫でした</p>
<p>今日ちょうどSunの方とお会いできたのですが，なんでも前にもPPCと勘違いするエラーはあって修正されたそうです<br />
まぁUpdate 2が出たのは最近だし，Sun配布ではないので仕方ないですが，対応してほしいですね</p>
<p>ちなみにJNIの話ですが，PPCのバイナリでもRosettaで動くんやないかと思ってましたが・・・<br />
RosettaはPowerPCコードとx86コードの混在したプロセスは処理できないのでダメです</p>
<p><a title="Apple" href="http://developer.apple.com/jp/qa/qa2005/qa1295.html">Appleのサイト</a>にズバリ書いてありました</p>
<blockquote><p>PowerPCベースのMacintoshコンピュータ用にビルドされたJNIライブラリは、Java仮想マシンがRosettaなしですでに起動しているため、Rosettaのもとでロードされません。Javaアプリケーションは、インテルベースのMacではPowerPCのみのバイナリをロードしようとすると失敗します。</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://hasumi.info/~h2/2008/12/11/sun-spot-manager-tool%e3%81%a7%e3%83%8f%e3%83%9e%e3%82%8b/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
