1

=(CentOS ディストリビューションを使用)=

Grails でポートレットを開発しようとしています (liferay-exploded、portlets、および portlets-liferay プラグインを使用)。

http://grails.org/plugin/portletsのチュートリアルに従っていますが、ポートレット ビューを生成しようとすると、次のエラーが表示されます。

[localhost test]$ grails generate-portlet-views com.test.first
| Compiling 129 source files.
| Error Compilation error: startup failed:
Compile error during compilation with javac.
/home/portaldev1/.grails/2.2.0/projects/test/plugins/portlets-0.9.2/src/java/org/codehaus/grails/portlets/GrailsDispatcherPortlet.java:5: package javax.portlet does not exist
import javax.portlet.*;
^
/home/portaldev1/.grails/2.2.0/projects/test/plugins/portlets-0.9.2/src/java/org/codehaus/grails/portlets/GrailsDispatcherPortlet.java:10: cannot access javax.portlet.GenericPortlet
class file for javax.portlet.GenericPortlet not found

(These problems continue 68 more times)

Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
70 errors


1 error
[localhost test]$

google/stack overflow/groovy forums/liferay forums を参照しましたが、この問題について見つけた唯一の答えは、portlet-api-2.0.jar を CLASSPATH 環境変数に追加することです。

この行を .bash_profile に追加しようとしました: "CLASSPATH=/home/portletjar/" とこれらのエラーはまだ発生します。

私はEclipseやその他のIDEを使用していません。

これを修正するのを手伝ってください!また、(javac -cp を使用して).jar が配置されているクラスパスを手動で定義することにより、javax.portlet を使用する Java コードをコンパイルしようとしました。

4

2 に答える 2

2

portlet-api-2.0 jar を /lib ディレクトリに追加すると、問題が解決したようです。

于 2013-03-01T19:24:27.177 に答える
0

プラグインを正確にどのようにインストールしましたか? grails install-plugin xxx で?

プラグイン セッションの conf/BuildConfig.groovy で依存関係が宣言されているかどうかを確認します。次のような行である必要があります。

  • 「:portlets-liferay:0.4」をコンパイルします

乾杯に役立つことを願っています

于 2013-02-28T12:54:02.553 に答える