我有spring项目,我可以在导出jar文件之前从spring上下文中获取spring bean。我导出jar文件并在cmd上运行该jar文件。我得到了NoSuchBeanDefinitationException
。该项目找不到春豆。我在spring配置文件中使用了<context:component-scan>
。我想知道问题是什么?
修改
在bean中
package com.example.userprofile;
@Service("UserProfileManager")
@Transactional
public class UserProfileManagerImpl implements UserProfileManager{
@Autowired
private UserProfileDao userProfileDao;
在弹簧配置文件中
<context:component-scan
base-package="com.example" />
<tx:annotation-driven transaction-manager="transactionManager" />
<bean class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor" />
<bean id="transactionManager"
class="org.springframework.orm.hibernate4.HibernateTransactionManager"
p:sessionFactory-ref="sessionFactory" />
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource"
p:driverClassName="com.mysql.jdbc.Driver" p:url="jdbc:mysql://localhost:3309/test"
p:username="root" p:password="root" />
<bean id="sessionFactory"
class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="configLocation">
<value>hibernate.cfg.xml</value>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.format_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>
当我使用JBoss IDE测试项目时,它完美运行。但是当我将项目导出到jar文件并在cmd上运行时。我收到以下错误。
here是我的项目zip文件。我很抱歉迟到了。
答案 0 :(得分:1)
虽然问题陈述太宽而无法提供具体答案,但您可以执行以下操作:
如果没有跳出来,请粘贴整个堆栈跟踪,而不仅仅是片段以及jar的结构,以便我们看到与您相同的大图。