« PythonワンライナーでBrainf*ckインタプリタ(第二部) |Main| log »

« 日記 | zakki(雑記) | 日記 »

日記

【楽天市場】IQ Light:インテリアショップe-goods 。 まるでCGのよう。


__ 「リモートデスクトップ」を「妹デスクトップ」と空耳するんだったら、「リモートリポジトリ」も「妹リポジトリ」と空耳して頂きたい。いろいろな種類の妹がストックされていて、Mavenを使うと必要な妹が自動的にダウンロードされます。

IT-Walker on hatenaを参考にしてmavenのpom.xmlに<addClasspath>true</addClasspath>と書き足したところ、MANIFEST.MFが以下のようになりました。

Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: nishio
Build-Jdk: 1.5.0_07
Main-Class: org.nishiohirokazu.grinedit.GRINEdit
Class-Path: commons-logging-1.0.3.jar commons-codec-1.3.jar osgi-3.0.1
 .jar runtime-3.0m8.jar servlet-api-2.2.jar jython-2.1.jar jface-3.0.1
 .jar swt-win32-3.0m8.jar commons-httpclient-2.0.2.jar xmlrpc-2.0.1.jar

問題はこれじゃ実行可能jarファイルと同じフォルダにこれらの依存しているjarがなければならないと言うことです。ルートにずらずらファイルがあるのは目障りなのでlibフォルダの中とかに入っていて欲しいのですが…。

あ、試験管のなかのコード :: Maven2 で JAR の Manifest ファイルを設定する方法をメモによれば <classpathPrefix>lib</classpathPrefix>と指定してやればよいようです。

ついでに必要なjarを全部libフォルダにコピーしてくれればいいのになぁ…と思ったらそういうコマンドがあるそうです。Maven -TECHSCORE-。詳しいことは Maven Dependency Plugin - Maven 2 dependency Pluginに書いてありそう。

maven-dependency-pluginを使うためにはこのプラグインをインストールしないと行けなさそうです。で、ググってみるとoreilly.co.jp -- Online Catalog: Mavenに乗っていると言われました。いやー、その本は家に帰ればあるんだけど今知りたいんだよー。

「mvn plugin:download -DgroupId=org.apache.maven.plugin -DartifactId=maven-dependency-plugin -Dversion=1.0」で出来るはずなのに出来ない。

[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] The plugin 'maven:maven-dependency-plugin' does not exist or no valid ver
sion could be found

だそうな。

Maven Cactus plugin - Installing the Maven Cactus pluginを参考に Index of /maven2/maven/maven-dependency-plugin/1.0から手動でダウンロードしてインストール。 …してみたけど動かないので削除。インストールの仕方が悪いのかな?

      <plugin>
        <groupId>maven</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
	    <version>1.0</version>

Mailing list archivesを参考にして、 setting.xmlに

		<mirror>
			<id>www.ibiblio.org</id>
			<name>ibiblio</name>
			<url>http://www.ibiblio.org/maven2/</url>
			<mirrorOf>central</mirrorOf>
		</mirror>

と書き足したら

Downloading: http://www.ibiblio.org/maven2//maven/maven-dependency-plugin/1.0/ma
ven-dependency-plugin-1.0.pom
160b downloaded
Downloading: http://www.ibiblio.org/maven2//maven/maven-dependency-plugin/1.0/ma
ven-dependency-plugin-1.0.jar
13K downloaded
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] null
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.NullPointerException
        at org.apache.maven.plugin.DefaultPluginManager.addPlugin(DefaultPluginM

と…。一応進展はあったけども解決方法がわからない。 ふぅ。帰ってから本を読んでやることにします。 Re: findbugs for maven2 - NullPointerException


__ 「情報科学若手の会」でググってトップページを見て会場のウェルシティ湯河原のアクセスマップを印刷しました。あれ、招待公演が経済の話だったはずなのに暗号の話になってる…って2005年のじゃんこれ!あぶないあぶない。 これは危険だ。一度行ったことがあるだけに、バスに乗って会場に着いてから会場を間違えたことに気づくところだった。


__ 後ろ髪が伸びてきていてうっとおしい。切ろうかな。 後ろは見えないのでなかなかうまく切れない。 すきばさみできると切られなかった毛がひょろひょろ残ってうっとおしいが、 普通のはさみで変に切ると段差が出来てしまう。下に行くほど短くなるように切ればいいんだろうけどどうすればそうできるかなぁ。


__ 帰ってきて寝て起きたら頭の中のコビトさんが 「ねー、Pythonワンライナーを圧縮・展開するメカニズムを使ったらBrainf*ckを直接Pythonのコードに変換できるんじゃない?」などと言ってきまして、たしかに括弧の扱いだけなんとかすれば可能ですね。 ifilter(bool, (x == 0 or C1 or C2 or C3 ....)).next()でいいのかな。 これは終了時にTrueになってしまうので「(ifilter(bool, (x == 0」と「)).next() and 0)」にすればいいのか…。+は「or globals().__setitem__(p, globals()[p] + 1)」で…。うわー、なんか出来そう。今朝の三時なんだけど、鳥がちゅんちゅん鳴くまでに出来そう。っていうかそんなことしている場合じゃないんだけどな。


__ dependencyプラグインをローカルリポジトリから削除してもう一度mvnを実行してみると、きちんとそれらしき物がダウンロードされてきました。 そこでコマンドラインで「mvn dependency:copy-dependencies」とやってみたらtargetフォルダの中にdependencyフォルダが生成され、中にはjarファイルが入っていました。うまく動いたようです。

でも、swt-win32-3044.dllが必要だといわれてしまいました。swt-win32-3139.dllなら手元にあるのだけど…。

手作業でEclipse downloads - mirror selectionから最新のSWTをダウンロードして配置してやると動きました。うーん。当たり前だけどmavenですべてが解決するわけではないのですね。

Traceback (innermost last):
  File "pythonScripts/init.py", line 30, in ?
ImportError: No module named apache
initMouseMediator.py
initMenu.py
Traceback (innermost last):
  File "pythonScripts/initMenu.py", line 7, in ?
ImportError: No module named eclipse

むむ。Jythonからライブラリをインポートできてないぞ?なぜ?


__ 今日は昼からミーティングがあるからここまでにしておいて寝ることにしよう。 よくよく考えればこんな見栄えのしない作業よりももっと見栄えのする作業に時間を割くべきだった。若手の会での発表資料も出来てないし。明日は今までに作ったデモを全部実行してみて、動かないのがあれば早急に直し、どういう順番で実行するか考えること。


__ SIGGRAPH2005リポート

ABMの基礎となるのはSpatial Algebra、またはSpatial Notationと呼ばれるFetherstone氏が1987が発表したもので、空間の位置を示すのに1x6のベクトル、6x6の変換行列を使うことによってNewton-Euler法の運動方程式、 座標変換、そして複数のDOFを持った関節をあらわすことができます。

おおっ。 そんなものがっ。


__ 404 Blog Not Found:投資するべきではない!=働いてはいけない 。記事を読んで「なるほど」、コメントを読んでまた「なるほど」

トラックバック(Trackback)

Trackback URL: http://www.nishiohirokazu.org/mt/mt-tb.cgi/320

フィードバック

by ymasuda | 2006年09月15日 17:25

なんだかLispですね。

ご意見・ご感想をお送りください(フィードバック)

(フィードバックはメールで送信され、基本的に表示されませんが、内容によっては公開させていただくこともございます。ご了承ください。Your comment doesn't appear the page immediately. If the comment has value to other people, it will be put on the page or subsequent entries. Thank you.)

上の情報は、いずれも未記入でかまいません。 All of above questions are optional.