Spring bean 无法解析 org.joda.time.DateTime 的构造函数

Spring bean unable to resolve constructor for org.joda.time.DateTime

我正在使用 spring 作为

org.joda.time.DateTime 注入构造函数
<bean id="myDateTime" class="org.joda.time.DateTime">
    <constructor-arg type="java.lang.Long" value="${startDateTime:#{null}}" />
</bean>

startDateTime 解析为 1341571102000。但是我收到有关无法解析构造函数的错误

Cannot resolve reference to bean 'myDateTime' while setting constructor argument; 
nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'myDateTime' defined in URL [file:/path/to/spring-configuration/application-config.xml]: Could not resolve matching constructor (hint: specify index/type/name arguments for simple parameters to avoid type ambiguities)

org.joda.time.DateTime class 没有接受 java.lang.Long 的构造函数。您可能想使用接受原语 long 的那个。为此,请尝试为 constructor-arg.

指定 type="long"

但是,在未设置 startDateTime 的情况下回退到 null 将不起作用。我不确定你的回退意图是什么,但如果你要使用 long 构造函数,你需要以其他方式解决它。