前の関連記事:linuxBean14.04(34)失敗したLibreOfficeSDKの例を再make:その2
この記事はあとでもっとシリーズ化して書こうと思ったのですが、makeに失敗したLibreOfficeSDKの例のJavaの非推奨APIを探すのにjavaソースファイルをNetBeansで開く必要があったのでもうここで公開することにしました。だいたいいままでやったことのあることのまとめになります。
FirstStepsの例のプロジェクトを作成する
LibreOffice(62)Javaの例をNetBeansでブレークポイントを設定すると同様です。
NetBeans8で、ファイル→新規プロジェクト。
カテゴリ:Java、プロジェクト:既存のソースを使用するJavaプロジェクト。「次へ」。
プロジェクト名:FirstSteps。「次へ」。
「フォルダを追加」で「/opt/libreofficedev5.0/sdk/examples/DevelopersGuide/FirstSteps」を追加します。「次へ」。
「含める」に「**java」と入力。「終了」。
FirstStepsというプロジェクトができました。
FirstStepsプロジェクトにライブラリを追加する
juh.jar、jurt.jar、ridl.jar、unoloader.jar、unoil.jarの5つのjarファイルについては今後他の例でも使うと思うのでライブラリにまとめてしまいます。
ツール→ライブラリ。
「新規ライブラリ」。
ライブラリ名は「LibreOfficeDev5.0」にしました。
/opt/libreofficedev5.0/program/classes/unoil.jar
/opt/libreofficedev5.0/program/classes/juh.jar
/opt/libreofficedev5.0/program/classes/jurt.jar
/opt/libreofficedev5.0/program/classes/ridl.jar
/opt/libreofficedev5.0/program/classes/unoloader.jar
この5つのファイルをライブラリに追加します。
これらはsetsdkeenv_unix.sh.inで環境変数CLASSPATHで定義されています。
5.0からureフォルダが無くなって、classesフォルダに統一されましたね。
必要ならJavadocタブで/opt/libreofficedev5.0/sdk/docs/java/refフォルダを追加しておきます。
(4.3と同様にウィンドウ→IDEツール→javadocウィンドウ、で解説がみれるIDLは極一部です。)
これでLibreOfficeDev5.0ライブラリ作成完了です。
FirstStepsプロジェクトのライブラリを右クリック、ライブラリの追加。
LibreOfficeDev5.0ライブラリを追加します。
ライブラリが追加されてソースパッケージのファイルアイコンにでていたエラーも消えました。
build.xmlを編集する
この設定はNetBeansでMakefileと同様のjarファイルを作成するための設定なので、単にブレークポイントを設定してJavaの例の動きを見たいだけなら設定不要です。
LibreOffice(63)FirstStepsの例をNetBeansでビルドすると同じようにします。
build.xmlの</project>の上行に以下を追加します。
<target name="-post-jar">
<!--作成済のjarファイルを削除する-->
<delete>
<fileset dir="${dist.dir}" includes="*.jar"/>
</delete>
<!--classファイル名からjarファイルを作成するマクロ-->
<macrodef name="mkjar">
<attribute name="class.name" /><!--拡張子を除くjavaソースファイル名を引数にする-->
<sequential>
<jar destfile="${dist.dir}/@{class.name}.jar">
<!--build/classesフォルダからclassファイルを得る-->
<fileset dir="${build.classes.dir}">
<include name="@{class.name}.class" />
</fileset>
<!--LibreOffice固有のファイルをjarファイルに入れる-->
<fileset dir="/opt/libreofficedev5.0/sdk/classes">
<patternset>
<include name="com/sun/star/lib/loader/*.class"/>
<include name="win/unowinreg.dll"/>
</patternset>
</fileset>
<manifest><!--manifest.mfを生成-->
<attribute name="Main-Class" value="com.sun.star.lib.loader.Loader"/>
<section name="com/sun/star/lib/loader/Loader.class">
<attribute name="Application-Class" value="@{class.name}"/>
</section>
</manifest>
</jar>
</sequential>
</macrodef>
<!--コンパイルするjavaファイルのリスト-->
<mkjar class.name="FirstUnoContact"/>
<mkjar class.name="FirstLoadComponent"/>
<mkjar class.name="HelloTextTableShape"/>
</target>
</project>
FirstStepsの例をNetBeans8でビルドする
デフォルトではライブラリがコピーされてきますのでその設定をオフにします。
プロジェクトのプロパティ。
カテゴリ:パッケージング、「依存ライブラリをコピー」のチェックをはずします。
実行→プロジェクト(FirstSteps)を消去してビルド。
ビルド成功しました。
ビルドしたjarファイルを実行する
実行→プロジェクト(FirstSteps)を実行、を初めてしたときはメイン・クラスの選択ダイアログがでてきます。
まずは「FirstLoadComponent」を選択します。
Calcが起動して数値が入力されました。
プロジェクトのプロパティでメインクラスをHelloTextTableShapeに変更します。
これで実行するとWriter、Calc、Drawが起動して以下のような表示がされました。
LibreOffice(61)linuxBeanでJavaの例をmakeでやった4.3のときと違って下の斜になった四角のなかにもテキストが入っていますね。
FirstUnoContactはFirstLoadComponentやHelloTextTableShapeがLibreOfficeと通信する部分の例になりますので、実行してコンソールにConnected to a running office...と出れば成功です。
参考にしたサイト
LibreOffice最新版 | LibreOffice - オフィススイートのルネサンス
LibreOffice5.0.0.0beta1をインストールしました。
もうじき日本語のアナウンスが出るはずですが、やや先走り気味に。 4.4.3出ました。... - LibreOffice (日本語)
LibreOffice4.3系のサポートは2015.5.27で終了になるそうです。
Ubuntu環境にてJavaアプリケーション実行時に日本語が文字化けする - omotenashi-mind
JavaVMの日本語フォントの設定方法。
0 件のコメント:
コメントを投稿