web-dev-qa-db-ja.com

GWTホストモードでのSpringプロファイルのアクティブなJVM引数のアクティブ化

以下に示すようなばねプロファイル構成があります

<beans profile="dev">
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="${db.driverClassName}" />
        <property name="jdbcUrl" value="dfgdfg" />
        <property name="user" value="${db.username}" />
        <property name="password" value="${db.password}" />
    </bean>
</beans>

<beans profile="prod">
    <jee:jndi-lookup id="dataSource" jndi-name="jdbc/Test"/>
</beans>

VM引数-Dspring.profiles.active="dev"を介してこれをアクティブにしようとしています。これはTomcatで機能し、gwt-mavenを介したホストモードでのcontext-paramルートも機能します-pluginしかし、VM引数が機能しません。mvn -Dspring.profiles.active="dev" gwt:runを試してみましたVMを介して-Dspring.profiles.active="dev"を渡そうとしました=目標gwt:runとともに実行構成の[JRE]タブの下の引数。環境タブと-Dspring.profiles.active=devも試しましたが、NoSuchBeanDefinitionExceptionは動作しません。これは、組み込みサーバーの制限された機能?

14
Aravind A

いいえ、単にgwt:mavenプラグインは奇妙で、起動されたJVMインスタンスにシステムプロパティを渡さず、パラメーターを渡す唯一の方法は<extraJvmArgs>プラグイン構成内。あなたの場合、あなたはgwtプラグインの設定タグに以下を追加する必要があります:

<extraJvmArgs>-Dspring.profiles.active=dev</extraJvmArgs>

神はなぜこれがこのようにしか機能しないのかを知っています。他に通常の方法があったらいいのにと思います。

25
jusio