0

このガイドに従って、Heroku にSpring Bootアプリをデプロイしようとしています: http://codingricky.com/booting-spring-boot-into-heroku/ (Ricky Yim に感謝)

それはかなり簡単に思えますが、私のアプリには依存関係integration.xmlに必要な が含まれています:spring-messaging

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-messaging</artifactId>
    </dependency>

そうは言っても、私はSpring Integrationwebsockets / STOMP メッセージングだけを使用しているわけではありません。したがって、依存関係が必要です。

アプリを起動しようとすると、単純な見つからないというエラーが表示されます。

Caused by: java.io.FileNotFoundException: class path resource [integration.xml] cannot be opened because it does not exist

ローカルintegration.xmlには/src/main/resourceディレクトリにありrun as -> spring boot、Eclipse からの場合は問題なく配置されます。

また、HTML の単一ページと、websockets をデバッグするためのいくつかの javascript ファイルも用意しています

/resourceアプリがjar としてデプロイされたときにディレクトリ内のこれらのファイルを見つけることができるようにするには、何を変更する必要がありますか?

4

1 に答える 1

2

Maven とデフォルト設定を使用して JAR をビルドすると、「src/main/resources」からのすべてが JAR のルートにあることがわかります。したがって、「java -jar」で実行すると、クラスパス上にあることがわかります。Heroku ビルドパックが JAR をどのように実行するのか (「java -jar」を使用するのか、それとも解凍して別のことを行うのか) がわからないので、答えはそこにあるかもしれません。

JAR ファイルをローカルで実行できる場合は、PaaS で動作することを期待していますが、実行時に何をしているのかは誰にもわかりません。

ところで、「spring-messaging」は XML 構成を必要としないため、おそらくそれを調べて、エラー メッセージが実際にどこから来ているのかを理解しようとする必要があります。プロジェクトを github で共有すると、何が間違っていたのかを指摘しやすくなります。

于 2014-01-30T10:42:23.293 に答える