ちょっとした質問です。Spring 3.1 を使用しており、値の区切り記号 (デフォルト値) に問題があるようです。
<context:property-placeholder ignore-resource-not-found="false" ignore-unresolvable="false" location="${app-conf-base-path:classpath:}environment/app-conf-${spring.profiles.active:test}.properties" />
Maven 環境プロファイルに基づいて、デプロイされるプロパティをフィルタリングします。Maven 環境プロファイルが指定されていない場合、すべての環境プロパティ ファイルが war にロードされ、クラスパスに配置されます。実際の環境固有の設定は、Spring プロファイルを使用して実行時に読み込まれます。ただし、問題を引き起こしているのは ${app-conf-base-path:classpath:} です。彼はこれを解決できないようです。これは、プレースホルダーがデフォルト値セパレーターの最後の出現を使用して分割されているためだと思います。これが必要な理由は、JVM パラメータとして定義されていない限り、app-conf-base-path を見てもらいたいからです。その場合、彼はクラスパスを調べる必要があります。
私は試した:
- 値のセパレーター == '?' を使用したプレースホルダー コンフィギュアラー 役に立たない。
代替案を思いついた人はいますか?