hnakamur’s blog

ものすごい勢いで忘れる私のために未整理でもいいからとりあえずメモ

ラベル eclipse の投稿を表示しています。 すべての投稿を表示
ラベル eclipse の投稿を表示しています。 すべての投稿を表示

2011-06-25

Eclipse IndigoでjarのUTF-8のソースコード文字化け対策パッチ適用

Eclipse Indigoをプロジェクトで参照しているjarのソースファイルがUTF-8だと、プロジェクトのエンコーディング設定(ResourceのText file encoding)がUTF-8になっていても文字化けしてしまいます。Heliosでは大丈夫でした。

ググってみると先人が対応してくれてました。感謝しつつ適用。
Release Details: WTP 3.3.0(Indigo)用 Feature Patch (Feature Patch) - Tools for PDT (PHP Development Tools) - SourceForge.JP

eclipseのエディタでの空白とタブの表示設定

[Windows]/[Preferences]メニュー
左のツリー[General]/[Editors]/[Text Editors]
右の[Show whitespace characters]のチェックをオン
[whitespace characters]のリンクをクリック
SpacesはTrailingのみチェック、Tabはすべてチェック
これでインデントにタブが入っていたり、行末に余分な空白が入っていたら気付きます。

と、この設定にしていたらJavaのエディタで行選択してTABキーを押してインデントしたときに
空白ではなくTABでインデントすることに気付きました。
[General]/[Editors]/[Text Editors]の[Insert spaces for tabs]はチェックをオンにしていますがそうなります。
Javaのフォーマッタの設定を変えることで解決しました。

[Java]/[Code Style]/[Formatter]で[Edit]ボタンを押して[Indentation]タブの[Tab policy]を[Spaces only]にして[Profile name]に何か名前を付けて[OK]を押します。

2011-06-19

eclipseでVLゴシックフォントを使う

スペースでインデントしていると等幅フォントのほうがみやすい、大文字のアイIと小文字のエルlや大文字のオーOと数字のゼロ0の見た目がはっきり違うほうがうれしいということで、VLゴシックフォントを使うことにしました。

eclipseの設定は以下のとおりです。
[Windows]/[Preferences]メニュー
→左のツリーで[General]/[Appearance]/[Colors and Fonts]
→右のツリーで[Basic]/[Text Font]を選んで[Edit...]ボタン
→フォントを選択して[OK]ボタン

native2ascii不要のプロパティエディタ

ホームページ:プロパティエディタ
eclipse更新サイト:http://propedit.sourceforge.jp/eclipse/updates/

Sysdeo TomcatプラグインよりWTPのほうがよいです

hnakamur’s blog: m2eclipseとTomcatプラグインの連携設定ではSysdeo Tomcatプラグインを使った方法を書きましたが、WTP (Web Toolkit Platform)のほうが簡単ということがわかりました。

eclipseのJavaEE版ならWTPが含まれています。

使い方
あらかじめTomcatをインストールしておきます。

Tomcatサーバの登録
Eclipseの[Servers]ビューで右クリックしてポップアップメニューを開き[New]/[Server]メニューを選ぶ。
ツリーでTomcatのバージョンを選んでTomcatのインストールディレクトリを選択(ここの手順はうろ覚え)

ウェブアプリの登録
Eclipseの[Servers]ビューのサーバーの行を右クリックしてポップアップメニューを開き[Add and Remove...]メニューを選ぶ。
ウェブアプリのプロジェクトを選んで追加する。

あとはstartで起動すればよいだけです。試してみた感じではTomcatのインストールディレクトリ内の設定ファイルが書き換えられたりはしないようです。

追記
WTPだからというのは無関係でSAStrutsのDoltengで作成したプロジェクトではsrc/main/webapp/WEB-INF/のlib/にライブラリが置いてあり、classes/以下にコンパイルしたクラスを置くように設定されているというのが本質でした。

試しにpom.xmlの依存関係を変更してmvn war:inplaceを実行すればsrc/main/webapp/WEB-INF/lib/以下が更新されました。なので、これも含めてSubversionなどソース管理システムに登録してしまうのが簡単そうです。

2011-06-11

m2eclipseとTomcatプラグインの連携設定

2011-06-19追記:その後hnakamur’s blog: Sysdeo TomcatプラグインよりWTPのほうがよいですということがわかりました。


プロジェクトのプロパティの[Tomcat]→[全般]タブ→[Webアプリケーション・ルートとするサブディレクトリー]をどう設定するかについてのメモです。

Super Agile StrutsとかMaven2 + Eclipse + Tomcatプラグイン の組み合わせ - Enjoy*Studyではsrc/main/webappにしています。ですが、Maven2でリソースファイルのプロパティ置換をしていたりすると困る気がします。

そこでmavenをフルビルドすることで作成されるwar生成用の一時フォルダを設定するようにしてみました。具体的には以下のようにします。
  • プロジェクトのプロパティの[Builders]では[Maven Project Builder]の行が存在しチェックがついた状態にしておく(m2eclipseでプロジェクトを作ればそうなっています)。
  • プロジェクトのプロパティの[Maven]/[Lifecycle Mapping]→[Goals to invoke after project clean]を「clean package」にする。
  • プロジェクトのプロパティの[Tomcat]→[全般]タブ→[Webアプリケーション・ルートとするサブディレクトリー]は「target/<warファイルのベース名>」とする。warファイルのベース名は、pom.xmlでbuildタグのfinalNameタグを指定する場合はその値になり、finalNameを指定しない場合は${artifactId}-${version}になります。

この設定により、[Project]/[clean]メニューを実行すると「mvn clean package」が実行されて、targetフォルダ以下が作り直されます。ただ、エクスプローラでtargetフォルダを開いていたりするとcleanでフォルダが消せずうまくいかないので注意。

開いていなくてもTomcatプラグインでTomcatを起動中の場合もうまくいかないときもあるようです。Consoleにエラーは出ないのですが、targetフォルダ内のwarファイル生成用フォルダの中身が不足しているときがありました。

Tomcatを停止してから[Project]/[clean]を実行するほうが無難です。つまりホットデプロイはあきらめるということですが、不安定になるよりはいいと割り切ることにします。

ブログ アーカイブ