0
彈簧應用程序我嘗試setter注入它運作良好。當我寫構造函數注入它失敗。彈簧構造函數注入拋出錯誤
public class Sample {
JdbcTemplate jdbcTemplate;
public Sample(){
}
public Sample(JdbcTemplate jdbcTemplate){
System.out.println("invoked");
this.jdbcTemplate=jdbcTemplate;
}
}
上下文文件
<bean id="derbyDataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${db.driver}" />
<property name="url"
value="jdbc:derby:#{systemProperties['user.appdata']}/${db.name};create=true" />
<property name="username" value="${db.user}" />
<property name="password" value="${db.password}" />
</bean>
<!-- JDBC Template Bean -->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="derbyDataSource" />
</bean>
<bean id="sample" class="com.exbury.Sample">
<constructor-arg ref="jdbcTemplate"></constructor-arg>
</bean>
負載情況下
ApplicationContext context = new ClassPathXmlApplicationContext("derbyDatabaseConfiguration.xml");
錯誤
Exception in thread "main" java.lang.IncompatibleClassChangeError: class org.springframework.core.LocalVariableTableParameterNameDiscoverer$ParameterNameDiscoveringVisitor has interface org.springframework.asm.ClassVisitor as super class
這就是爲什麼我不喜歡春天 – NimChimpsky
你可以嘗試重新編譯項目嗎? –
嘗試了幾次。但不起作用。 – Burusothman