ページ

2015年3月16日月曜日

GAEと戯れる 21 - トラブル集 -

トラブル集

「必要な .class ファイルから間接的に参照されています」が発生した場合



ビルドパスの構成より、ライブラリを一旦削除し再度追加する。


↓それでも無理な場合


「.externalToolBuilders」について



ディレクトリトップに.externalToolBuildersが出来ていたので削除したらコンパイルがNGになってしまいました。
「.project」ファイルの中身

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
 <name>eNaviPrj</name>
 <comment></comment>
 <projects>
 </projects>
 <buildSpec>
  <buildCommand>
   <name>org.eclipse.jdt.core.javabuilder</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
   <triggers>full,incremental,</triggers>
   <arguments>
    <dictionary>
     <key>LaunchConfigHandle</key>
     <value>&lt;project&gt;/.externalToolBuilders/com.google.appengine.eclipse.core.enhancerbuilder.launch</value>
    </dictionary>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
   <triggers>full,incremental,</triggers>
   <arguments>
    <dictionary>
     <key>LaunchConfigHandle</key>
     <value>&lt;project&gt;/.externalToolBuilders/com.google.appengine.eclipse.core.projectValidator.launch</value>
    </dictionary>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>org.eclipse.ui.externaltools.ExternalToolBuilder</name>
   <triggers>full,incremental,</triggers>
   <arguments>
    <dictionary>
     <key>LaunchConfigHandle</key>
     <value>&lt;project&gt;/.externalToolBuilders/com.google.gdt.eclipse.core.webAppProjectValidator.launch</value>
    </dictionary>
   </arguments>
  </buildCommand>
 </buildSpec>
 <natures>
  <nature>org.eclipse.jdt.core.javanature</nature>
  <nature>com.google.appengine.eclipse.core.gaeNature</nature>
  <nature>com.google.gdt.eclipse.core.webAppNature</nature>
 </natures>
</projectDescription>
赤字の箇所でディレクトリを指定している。
試しに新規にGAEプロジェクトを作成しても.externalToolBuildersは作成されない。


↓新規に作成したプロジェクトの.projectファイル
<buildSpec>
  <buildCommand>
   <name>org.eclipse.wst.common.project.facet.core.builder</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>org.eclipse.jdt.core.javabuilder</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>com.google.gdt.eclipse.core.webAppProjectValidator</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>com.google.appengine.eclipse.core.enhancerbuilder</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>com.google.appengine.eclipse.core.gaeProjectChangeNotifier</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>com.google.appengine.eclipse.core.projectValidator</name>
   <arguments>
   </arguments>
  </buildCommand>
  <buildCommand>
   <name>com.google.gwt.eclipse.core.gwtProjectValidator</name>
   <arguments>
   </arguments>
  </buildCommand>
 </buildSpec>


特に外部フォルダを作成しなくてもよさげ
※ビルド構成を見たい場合は、プロジェクト右クリック > 「プロパティ」、「ビルダー」で確認できる


Metaファイルが生成されない



いくらコンパイルしてもmetaファイルが生成されない場合


1.そもそもアノテーション処理が有効になっているか確認


プロジェクトのプロパティ > 「Javaコンパイラー」 > 「注釈処理」



















生成されるソースディレクトリには「src」を設定




2.ファクトリーパスにslim3-gen-XXX.jarが追加されているか


プロジェクトのプロパティ > 「Javaコンパイラー」 > 「注釈処理」 > 「ファクトリーパス」





















0 件のコメント:

コメントを投稿