3

シンプルな「hello」タイプの JRuby アプリケーションを作成し、Warbler を使用して WAR を起動し、JBoss にデプロイしました。ただし、アプリケーションを使用すると、次のエラーが発生します。

ActiveRecord::JDBCError (The driver encountered an unknown error: java.sql.SQLException: path to '/opt/jboss/server/ruby/tmp/deploy/tmp8791905909469840942demo-exp.war/WEB-INF/db/production.sqlite3': '/opt/jboss/server/ruby/tmp/deploy/tmp8791905909469840942demo-exp.war/WEB-INF/db' does not exist):

確かに、demo.war ファイルを掘り下げると、WEB-INF ディレクトリに db ディレクトリがありません。db ディレクトリは app ディレクトリに存在しますが、テスト、開発、および本番データベース ファイルと一緒に存在します。

何か案は?

4

1 に答える 1

5

通常、db ディレクトリには移行のみが含まれます。sqlite3を使用している場合、データベースファイルが含まれていますが、本番環境で戦争を展開すると、サーバー内部のどこかで展開され、再展開時に削除される可能性があるため、データベースファイルは再展開で消えます. ファイルが読み取り専用で、その考慮事項について心配していない場合は、実行warble configして編集し、配列にconfig/warble.rb追加することで、db ディレクトリを簡単に追加できます。dbconfig.dirs

于 2011-09-02T19:54:23.707 に答える