2017-03-16 1 views
0

私の問題は、クラスパスに適切なプロパティファイルを入れて、クラスパスでプロパティファイルを探すようにgrailsに指示しましたが、ファイルのプロパティは既存のものを上書きすることはできません。私config.groovyでgrails appのクラスパスプロパティファイルが使用されていません

私はラインがあります。

:私のXXX-config.propertiesで

grails.config.locations = [ "classpath:${appName}-config.properties", 
          "file:./${appName}-config.properties"] 

// verified that appName is being used. It prints out classpath:XXX-config.properties, as expected, where XXX is my appname. 
println "grails.config.locations: ${grails.config.locations}" 

を、私は(これは私が使用するものである)別のDB接続URLを指定します

dataSource.url=jdbc:postgresql://products.yyyyy.ap-southeast-1.rds.amazonaws.com:5432/mydatabasename 

私はクラスパスとスタートアップのtomcat7にXXX-config.propertiesを入れましたが、意図的に偽のデータベースを見つけることができないというエラーがスローされます。つまり、データベースプロパティがオーバーライドされませんでした。

私はクラスパスが間違っていると思っていますが、私はps aux | grep tomcatを実行して、tomcat7のコマンドライン引数に "-classpath:/ home/jbu /:_ other_paths_here_"が含まれていると伝えます。注意プロパティファイルは/home/jbu/XXX-config.propertiesに置いています。私はその先行コロンについて少し心配していますが、それは他の問題を引き起こすようではありません。

classpathディレクトリが正しく表示されるので、プロパティファイルの形式が正しくない可能性があるので、grails.configに厳密な "file:/home/jbu/XXX-config.properties"を追加しました。プロパティが見つかって正常に上書きされたため、プロパティファイル自体に何も問題がないことを意味します。

私はもうアイデアはもうありません。誰かが私を助けることができますか?


追記:私は/usr/share/tomcat7/bin/setenv.shするために、この行を追加することによって、tomcat7ためのCLASSPATH変数を変更:

export CLASSPATH="${CLASSPATH}:/home/jbu/" 
+0

このプロジェクトを見https://github.com/vahidhedayati/kchatを持っている - 私はあなたがGrailsの2にあると思います - これは例がのcon​​figsだけでなく、Tomcatの設定実証し、提供それを行うために使用されています - 助けてくれることを望みます – Vahid

+0

@vahidので、env varを設定するか、ファイルパスを正しく指定するプロパティを渡しますか?私の場合、tomcatのインスタンスは私の制御下にありませんし、より高い特権のアカウントとして自動的に起動します。私は簡単に行くことができないと私はこのようなアプリを起動するたびに新しいプロパティをエクスポートするためにTomcatのスクリプトを変更します。しかし、もし私がクラスパスに物を追加することができれば、それは少し簡単です。なぜなら、私はtomcat configsを混乱させる必要がないからです。 – jbu

+0

@vahidはいim on grails 2.4.5。この機能は動作するはずですか?率直に言って私が期待していることをやめて少しだけサポートと回答を見つけることができなかったgrailsでうんざりしていました – jbu

答えて

0

この(Grailsの中の多くの他のものとの間で、それは)破損しているようだ。一숨...私はgrails 2.4.5を使用しているので、1.3.5以降は壊れていると少し驚きました。

http://jay-chandran.blogspot.com/2010/10/grails-using-external-properties-file.html

Grails 1.3.5: How to configure Datasource.groovy to either connect to MySQL or SQL Server

+0

Grails 2.4.5は2年以上前にリリースされました。 2年前のバージョンを使用しているときのプロジェクトの状態についてのコメントは公正な評価ではありません。この機能を提供するGrails 3用の外部設定プラグインがあります。 –

+0

@JamesKleeh私はバージョンが何であるかを明確に指定しました。 – jbu

関連する問題