2016-07-27 16 views
0

"git push master heroku"を使用してアプリケーションをデプロイする際にエラーが発生しましたが、ローカルで正しく動作します。 私のpersistence.xmlを私のデータ・ソースであるH2(私はたぶんPostgreSQLを使用します)にアクセスするために使用したいと思います。Springを使用せずにpersistence.xml(JPA)を使用してHerokuにデプロイする

私はSpring以外のリファレンスは見つかりませんでした。 (私はそれを使用することはできません)

ありがとう!

+0

dup of https://stackoverflow.com/questions/38603284/heroku-deploy-with-java-jpa-not-use-spring –

+0

こんにちは皆、エラーを見つけてください。 –

答えて

1

私は、HerokuにJavaEE Webアプリケーション(jsf、javabean、ejb、diなど)をデプロイしました。 Herokuはあなたのアプリケーションを起動するためのシェルスクリプトを実行できるようにするメインメソッドまたは実行可能な.jarファイルを持つクラスのようです。プリインストールされたフルスタックアプリケーションサーバーではありません。また、HerokuでJavaアプリを実行する場合は、mavenになるはずです。

は、それはあなたがpayara-microwildfly-swarmspring-bootのようにどこにでも小さなサーバをクラウド対応の実行を使用することができますコマンドラインから動作させます。あなたのアプリケーションとサーバーを単一の実行可能なjar(Uber JAR)に変えます。また、tomcatとjettyにはuberJarをビルドするためのラッパーがあります。

私はpayara-microを使用しており、非常に小さなジャーを実行できることは素晴らしいことですほとんどすべてのJavaEEの機能はセッション複製ありです。 payara-micro how toの手順については、このリンクに従ってください。

ヘロクに押し込むと(heroku cliツールを使用)、自動的にプロジェクトが構築され、プロジェクトルートディレクトリからProcfileというファイルからスクリプトを実行します。サンプルprocfile:

web: java -jar target/myapp.jar --port $PORT

は、スニペットの上から$PORT部分を考えてみましょう。 Herokuランタイム(dyno)が起動するとランダムなポートが開かれ(私はそうだと思う)、$PORT環境変数にバインドします。だからここで私はを渡して、その受信者のためのpayara - マイクロサーバーへのポートをlistenします。他の上記のサーバーも同様の手順で動作するはずです。 JPAとデータベース接続Herokuのはconnect databaseにあなたのための接続情報を持っているJDBC_DATABASE_URLDATABASE_URL環境変数(URLなど)を提供するためにあなたはheroku devcenterr

でドキュメンテーションを見つけることができます。私はこれらの変数をpersistence.xmlに接続する方法を見つけることはできません。しかし、EntityManagerFactoryEntityManagerをプログラムで作成して設定することはできます。

希望します。

関連する問題