0

次の環境を使用して、新しいプロジェクトに取り組み始めました。

  • Ubuntu 12.04
  • Java バージョン「1.6.0_27」
  • Web 開発者向けの Eclipse Java EE IDE。バージョン: Helios サービス リリース 1
  • SpringSource ツール スイートのバージョン: 2.9.2.RELEASE
  • tomcat 6 (Eclipse IDE から開始、停止できます)
  • PostgresSql データベース + pgAdmin III

予想されるチュートリアルに従いました:

  • docs.spring.io/spring-roo/reference/html/beginning.html
  • docs.spring.io/spring-roo/reference/html/base-dbre.html

プロジェクトを作成し、リバース エンジニアリング プロセスを使用してすべてのビジネス オブジェクトを生成することができました。また、Web MVC プロセスを使用してコントローラー オブジェクトを作成することもできました。

私が抱えている問題は、自分のプロジェクトを tomcat で動作させることができないことです。サーバーを作成してプロジェクトを追加することができません: サーバータブを右クリックし、新規 => 新規サーバー => tomcat 6 を選択 => ランタイム環境を確認します: /opt/tomcat6 にリンクされ、ワー​​クベンチのデフォルト JRE を使用します予想 => [次へ] ボタンをクリックすると、プロジェクトがリストに表示されません。そのため、サーバーに追加できません 別の方法を試すために、プロジェクトを /opt/tomcat6 にある war ファイルにエクスポートしました。war ファイルを更新すると、webapps でアプリケーションが更新されたように見えますが、内容が次のようになっているため、war ファイルは正しくないと思います。

-- log.roo
-- pom.xml
-- .settings/
-- src/ And here
-- ++ main/
-- ++ ** java/
-- ++ ** resources/
-- ++ ** webapp/
-- ++ ** -- images/
-- ++ ** -- styles/
-- ++ ** -- WEB-INF/
-- ++ ** -- ++ classes/
-- ++ ** -- ++ i18n/
-- ++ ** -- ++ layouts/
-- ++ ** -- ++ spring/
-- ++ ** -- ++ tags/
-- ++ ** -- ++ views/
-- ++ ** -- ++ web.xml

ローカル ホスト:8080/MyProject/ にアクセスすると、404 エラーが発生します...ディレクトリの内容からすると、これは予想されることだと思います... ??? ...

Web から検索すると、Project Facets について赤字です...誰かがプロジェクトを右クリックするように指示された投稿を見ました => 構成 => ファセット形式に変換します...

「ファセット形式に変換...」の最後にツリードットがある限り、このメニューをクリックしました...実際にプロジェクトを変換しました-_-

それが追加の問題なのか、それとも良いことなのかはわかりませんが、現時点では私の問題は解決しません。

ところで、プロジェクトのファセットを選択できるようになりました...しかし、どのファセットですか??? それは別の質問です...

もう1つの手がかり:

Eclipseの「問題」タブを見ると、同じエラーが100回発生していることがわかりました。

Description Resource Path Location Type
javax.servlet cannot be resolved to a type category.tagx /MyProject/src/main/webapp/WEB-INF/tags/menu line 1 JSP Problem

ただし、pom.xml には次の内容が期待されます。

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>2.5</version>
    <scope>provided</scope>
</dependency>

[エラー ログ] タブには、次のエラーもあります (これは私の問題とは関係ありませんか?): エラー プロジェクト ファセット grails.app が定義されていません。プラグイン com.springsource.sts.server.tc.core で使用されます。

このメッセージも表示されます (これは確かに私の問題に関連している可能性がありますか?):

Info build: Abort due to missing classpath/inpath/aspectpath entries
Info /MyProject : Project 'MyProject' is missing required source folder: 'src/test/resources'
Info /MyProject : Project 'MyProject' is missing required source folder: 'src/test/java'

それらのフォルダーは存在します...しかし、私はそれらを使用していないので、ビルドパス管理ウィンドウの「ソース」タブからそれらを削除しました。「エラーログ」タブに大量のエラーが生成されました。私を助けるのに役立ついくつかの例を次に示します。

Error Problems occurred when invoking code from plug-in: "org.eclipse.jdt.core".
java.lang.NullPointerException: type must not be null
at org.eclipse.jst.ws.jaxws.utils.ContractChecker.nul lCheckParam(ContractChecker.java:40)
at org.eclipse.jst.ws.jaxws.utils.internal.annotation s.impl.AnnotationInspectorImpl.<init>(AnnotationIn spectorImpl.java:76)
at org.eclipse.jst.ws.jaxws.utils.annotations.Annotat ionFactory.createAnnotationInspector(AnnotationFac tory.java:350)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.J axWsWorkspaceResource.newAnnotationInspector(JaxWs WorkspaceResource.java:206)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.AbstractModelSynchronizer.processCompilationUn it(AbstractModelSynchronizer.java:115)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.handleAddedCompilatio nUnit(OnEventModelSynchronizer.java:354)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.recursevilyHandleComp ilationUnits(OnEventModelSynchronizer.java:278)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.recursevilyHandleComp ilationUnits(OnEventModelSynchronizer.java:302)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.recursevilyHandleComp ilationUnits(OnEventModelSynchronizer.java:302)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.handleChangedProject( OnEventModelSynchronizer.java:176)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.elementChanged(OnEven tModelSynchronizer.java:86)
at org.eclipse.jdt.internal.core.DeltaProcessor$3.run (DeltaProcessor.java:1557)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner .java:42)
at org.eclipse.jdt.internal.core.DeltaProcessor.notif yListeners(DeltaProcessor.java:1547)
at org.eclipse.jdt.internal.core.DeltaProcessor.fireP ostChangeDelta(DeltaProcessor.java:1381)
at org.eclipse.jdt.internal.core.DeltaProcessor.fire( DeltaProcessor.java:1357)
at org.eclipse.jdt.internal.core.JavaModelOperation.r un(JavaModelOperation.java:769)
at org.eclipse.core.internal.resources.Workspace.run( Workspace.java:1975)
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:47 77)
at org.eclipse.jst.jsp.core.internal.validation.JSPBa tchValidator.validate(JSPBatchValidator.java:532)
at org.eclipse.wst.validation.Validator$V2.validate(V alidator.java:1159)
at org.eclipse.wst.validation.internal.ValManager.val idate(ValManager.java:704)
at org.eclipse.wst.validation.internal.ValBuilderJob$ Visitor.visit(ValBuilderJob.java:334)
at org.eclipse.core.internal.events.ResourceDelta.acc ept(ResourceDelta.java:68)
at org.eclipse.core.internal.events.ResourceDelta.acc ept(ResourceDelta.java:79)
at org.eclipse.core.internal.events.ResourceDelta.acc ept(ResourceDelta.java:48)
at org.eclipse.wst.validation.internal.ValBuilderJob. deltaBuild(ValBuilderJob.java:211)
at org.eclipse.wst.validation.internal.ValBuilderJob. run(ValBuilderJob.java:179)
at org.eclipse.wst.validation.internal.ValBuilderJob. runInWorkspace(ValBuilderJob.java:126)
at org.eclipse.core.internal.resources.InternalWorksp aceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.j ava:54)


Error Exception occurred in listener of Java element change notification
java.lang.NullPointerException: type must not be null
at org.eclipse.jst.ws.jaxws.utils.ContractChecker.nul lCheckParam(ContractChecker.java:40)
at org.eclipse.jst.ws.jaxws.utils.internal.annotation s.impl.AnnotationInspectorImpl.<init>(AnnotationIn spectorImpl.java:76)
at org.eclipse.jst.ws.jaxws.utils.annotations.Annotat ionFactory.createAnnotationInspector(AnnotationFac tory.java:350)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.J axWsWorkspaceResource.newAnnotationInspector(JaxWs WorkspaceResource.java:206)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.AbstractModelSynchronizer.processCompilationUn it(AbstractModelSynchronizer.java:115)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.handleAddedCompilatio nUnit(OnEventModelSynchronizer.java:354)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.recursevilyHandleComp ilationUnits(OnEventModelSynchronizer.java:278)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.recursevilyHandleComp ilationUnits(OnEventModelSynchronizer.java:302)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.recursevilyHandleComp ilationUnits(OnEventModelSynchronizer.java:302)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.handleChangedProject( OnEventModelSynchronizer.java:176)
at org.eclipse.jst.ws.jaxws.dom.runtime.persistence.s ync.OnEventModelSynchronizer.elementChanged(OnEven tModelSynchronizer.java:86)
at org.eclipse.jdt.internal.core.DeltaProcessor$3.run (DeltaProcessor.java:1557)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner .java:42)
at org.eclipse.jdt.internal.core.DeltaProcessor.notif yListeners(DeltaProcessor.java:1547)
at org.eclipse.jdt.internal.core.DeltaProcessor.fireP ostChangeDelta(DeltaProcessor.java:1381)
at org.eclipse.jdt.internal.core.DeltaProcessor.fire( DeltaProcessor.java:1357)
at org.eclipse.jdt.internal.core.JavaModelOperation.r un(JavaModelOperation.java:769)
at org.eclipse.core.internal.resources.Workspace.run( Workspace.java:1975)
at org.eclipse.jdt.core.JavaCore.run(JavaCore.java:47 77)
at org.eclipse.jst.jsp.core.internal.validation.JSPBa tchValidator.validate(JSPBatchValidator.java:532)
at org.eclipse.wst.validation.Validator$V2.validate(V alidator.java:1159)
at org.eclipse.wst.validation.internal.ValManager.val idate(ValManager.java:704)
at org.eclipse.wst.validation.internal.ValBuilderJob$ Visitor.visit(ValBuilderJob.java:334)
at org.eclipse.core.internal.events.ResourceDelta.acc ept(ResourceDelta.java:68)
at org.eclipse.core.internal.events.ResourceDelta.acc ept(ResourceDelta.java:79)
at org.eclipse.core.internal.events.ResourceDelta.acc ept(ResourceDelta.java:48)
at org.eclipse.wst.validation.internal.ValBuilderJob. deltaBuild(ValBuilderJob.java:211)
at org.eclipse.wst.validation.internal.ValBuilderJob. run(ValBuilderJob.java:179)
at org.eclipse.wst.validation.internal.ValBuilderJob. runInWorkspace(ValBuilderJob.java:126)
at org.eclipse.core.internal.resources.InternalWorksp aceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.j ava:54)


Error File not found: '/MyProject/src/main/java/__2F_MyProject_2F_src_2F_main_2F_webapp_2F_WEB_2D_ INF_2F_tags_2F_form_2F_fields_2F_select_2E_tagx.ja va'
org.eclipse.core.internal.resources.ResourceExcept ion: Resource '/MyProject/src/main/java/__2F_MyProject_2F_src_2F_main_2F_webapp_2F_WEB_2D_ INF_2F_tags_2F_form_2F_fields_2F_select_2E_tagx.ja va' does not exist.
at org.eclipse.core.internal.resources.Resource.check Exists(Resource.java:326)
at org.eclipse.core.internal.resources.Resource.check Accessible(Resource.java:200)
at org.eclipse.core.internal.resources.File.getConten ts(File.java:291)
at org.eclipse.jdt.internal.core.util.Util.getResourc eContentsAsCharArray(Util.java:1186)
at org.eclipse.jdt.internal.core.CompilationUnit.getC ontents(CompilationUnit.java:649)
(...)
at org.eclipse.core.internal.events.ResourceDelta.acc ept(ResourceDelta.java:48)
at org.eclipse.wst.validation.internal.ValBuilderJob. deltaBuild(ValBuilderJob.java:211)
at org.eclipse.wst.validation.internal.ValBuilderJob. run(ValBuilderJob.java:179)
at org.eclipse.wst.validation.internal.ValBuilderJob. runInWorkspace(ValBuilderJob.java:126)
at org.eclipse.core.internal.resources.InternalWorksp aceJob.run(InternalWorkspaceJob.java:38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.j ava:54)
  • 「問題」タブに次のエラーが表示されます。

    説明 リソース パスの場所 タイプ クラスパス エラー: org.aspectj.lang.JoinPoint が見つかりません (aspectjrt.jar がクラスパスにあることを確認してください) MyProject 不明な Java 問題

ただし、pom.xml に期待されるコンテンツがあります。

        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>${aspectj.version}</version>
        </dependency>
4

2 に答える 2

0

Eclipseの問題のようです。プロジェクトをゼロから作成し、Maven Tomcat プラグインを使用して実行してみてください: "mvn clean install tomcat:run"

于 2014-01-09T23:13:17.617 に答える
0

最終的な解決策:

wiki.eclipse.org/WTP_Tomcat_FAQ#If_I_start_my_Tomcat_server_and_try_to_display_Tomcat.27s_default_page.2C_why_do_I_see_a_directory_listing_or_404_error_page.3F
    then
    wiki.eclipse.org/WTP_Tomcat_FAQ#What_configuration_option_determines_whether_the_Tomcat_server_uses_a_separate_instance_or_the_instance_from_the_Tomcat_installation.3F

STS の [サーバー] タブで、サーバーを右クリック => [開く] をクリックします。

「サーバーの場所」の部分には、いくつかのラジオ ボタンがあります。

  • ワークスペース メタデータを使用する (Tomcat インストールを変更しない)
  • Tomcat インストールを使用する (Tomcat インストールを制御する)
  • カスタムの場所を使用する (Tomcat インストールを変更しない)

私の場合、2番目の代わりに最初のものが選択されました。サーバー パスはワークスペースの .metada ディレクトリ (/xxx/.metadata/.plugins/org.eclipse.wst.server.core/tmp0) につながっていました。展開パスは「wtpwebapps」でした。

実際、私のプロジェクトはおそらく最初から機能しています...しかし、プロジェクトページに直接アクセスしようとしたことはありません...最初にルートTomcatページにアクセスしようとしました. それは間違いだった...

機能させたい場合は、これを試してください:

  • 実行中の場合はサーバーをシャットダウンします
  • このサーバーからすべてのプロジェクトを削除します
  • それを右クリック=>開く
  • 「サーバーの場所」の部分で、「Tomcat インストールを使用する (Tomcat インストールを制御する)」を選択します。
  • サーバーパスの値を変更します(私の場合:「/opt/tomcat6」)
  • デプロイパスの値を変更します(私の場合は「webapps」)
  • プロジェクトをサーバーに再度追加します
  • それを実行します

これはうまくいきます!!!

于 2014-01-10T13:11:00.437 に答える