« JavaによるGyazoクローン「Jyazo」 | メイン | 「#!」の名前は「shebang」 »

Jyazoの残作業

やり残し作業の続き
> マルチディスプレイ対応。手元の環境がマルチディスプレイでないため開発できない。awtのfullscreenは個別のディスプレイに対してのみ行なうはずなので、モニタが複数あるときはキャプチャするモニタを選択後に、キャプチャ範囲を選択する仕様になるはず。

環境がないため未対応。

> Windowsの実行形式であるexeファイルの作成。何故か手元の環境でMavenのlaunch4jプラグインが正常に動作しないため保留。

使っていたlaunch4jのMavenプラグインを別のプラグイン「org.bluestemsoftware.open.maven.plugin:launch4j-plugin」に変更したら動作した。

> Mac OS Xの実行形式であるappファイルの作成。作成方法はわかっているが、毎回作成するのは面倒なためMavenプラグインで実現したい。なければ作成せざるを得ないかも。

「org.codehaus.mojo:osxappbundle-maven-plugin」というMavanプラグインを導入した。

> 配布パッケージの作成の自動化。Mavenのassemblyプラグインで作成しようとしても、関係のないファイルまで同梱されてしまう。

assembly識別子のtypoが原因。「include」を間違えていたため、「directory」で指定していたpath配下のファイル全てを同梱していた模様。
たまたま、発見した以下のページを読んで、スキーマを追加して見て初めてわかった事だけど、pom.xmlでは識別子のtypoに警告を発するけど、assemblyでは対応しておらず、オートコンプリートも動作しない。
Eclipse で補完されなくてやきもきしてたので。冒頭の assembly 要素を以下のようにすればおkです。

<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
新規に行なった事
Linuxのshell scriptで実行ファイルを作成した。
jyazo
#! /bin/sh

shell_script_path=${PWD}"/"${BASH_SOURCE[0]}
jar_file_path=`expr ${shell_script_path} : '\(.*/\)[^\/]*$'`Jyazo-0.0.2-SNAPSHOT.jar
java -jar ${jar_file_path}
毎回、jarファイル名を変更するのは面倒なのでなんとかしたいところ。
仮に、Mavenプラグインが見つかればそちらに移行する予定。
sedコマンドの結果が変数に代入する方法がなく、かなりハマった...。

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

Google

タグ クラウド