gpt4 book ai didi

spring - 如何删除/隐藏 Atomikos 启动错误消息?

转载 作者:行者123 更新时间:2023-12-02 17:54:59 27 4
gpt4 key购买 nike

当通过 Spring 配置 Atomikos 时,不需要 jta.properties 或 transactions.properties 文件。尽管如此,Atomikos 启动时会将以下消息打印到 stderr:

No properties path set - looking for transactions.properties in classpath...
transactions.properties not found - looking for jta.properties in classpath...
Failed to open transactions properties file - using default values

这使得 Spring 配置看起来像是没有执行——尽管显然一切都很好。有谁知道如何摆脱这个问题,这样我就不会被问到 1000 次了?

有没有办法从特定组件或 jar 重定向 stderr?

最佳答案

您需要将系统属性com.atomikos.icatch.hide_init_file_path设置为任意值。在 java 命令行上执行此操作。在 Maven 中,您可以通过将命令行参数传递给 Surefire 来完成此操作,如下所示:

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Dcom.atomikos.icatch.hide_init_file_path=true</argLine>
</configuration>
</plugin>

更新:在 Spring 配置文件中,您可以像这样设置属性:

<bean id="atomikosSystemProps" class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetObject">
<!-- System.getProperties() -->
<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetClass" value="java.lang.System" />
<property name="targetMethod" value="getProperties" />
</bean>
</property>
<property name="targetMethod" value="putAll" />
<property name="arguments">
<!-- The new Properties -->
<util:properties>
<prop key="com.atomikos.icatch.hide_init_file_path">true</prop>
</util:properties>
</property>
</bean>

只要记住让您的 Atomikos beans “依赖”这个 bean,这样实例化的顺序就是正确的。

关于spring - 如何删除/隐藏 Atomikos 启动错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3016804/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com