Grails导入外部maven应用程序时出错,显示消息:DefaultListableBeanFactory.getDependencyComparator()

时间:2014-04-04 00:13:11

标签: grails

我需要编写一个项目,其中Model,Dao和服务层是一个外部项目,然后将其导入Grails。我们不会使用GORM进行数据库访问。但是,当我尝试导入项目时,我会收到错误。

对于Grails,我使用Grails 2.3.7。我修改了在BuildConfig中使用Hibernate 4。

runtime ":hibernate4:4.3.4"

我在BuildConfig

的依赖项下导入了我的项目
compile 'com.mycompany:mycompany-service:1.0.0.0'

在我的外部Maven项目中,这是我在pom.xml中的依赖项

spring-core, spring-context, spring-tx, spring-jdbc, spring-orm (all version is 4.0.2.RELEASE)
hibernate-core, hibernate-entitymanager, hibernate-c3p0 (4.3.4.Final)
mysql-connector-java 5.1.30

我的appContext.xml只定义了几个bean,其余的我只是注释:

<context:component-scan base-package="com.mycompany" />
<context:annotation-config/>
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
   ...
   <property name="packagesToScan" value="com.metabit.xtrain.service.model"/>
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager">
<tx:annotation-driven transaction-manager="transactionManager" />

我的DAO和服务是基于注释的。它正在工作,因为我编写了一个调用该服务的Junit,它确实写入数据库没有问题。

@Repository
public class HibernatePersonDAO  extends HibernateBaseDAO<Person, Long> implements IPersonDAO  {
...
}
@Service("personManager")
@Transactional
public class PersonManagerImpl extends BaseManagerImpl implements IPersonManager {
    @Autowired(required = true)
    protected IPersonDAO personDAO;
    @Override
    public void save(Person person) {
        personDAO.save(person);     
    }
}

这就是运行“grails run-app --stacktrace”时我在grails中的错误

2014-04-04 07:55:38,491 [localhost-startStop-1] ERROR context.GrailsContextLoader  - Error initializing the application: org.springframework.beans.factory.support.DefaultListableBeanFactory.getDependencyComparator()Ljava/util/Comp
arator;
Message: org.springframework.beans.factory.support.DefaultListableBeanFactory.getDependencyComparator()Ljava/util/Comparator;
   Line | Method
->> 131 | invokeMethod              in grails.spring.DynamicElementReader
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|   754 | invokeBeanDefiningClosure in grails.spring.BeanBuilder
|   584 | beans . . . . . . . . . . in     ''
|   527 | invokeMethod              in     ''
|   303 | innerRun . . . . . . . .  in java.util.concurrent.FutureTask$Sync
|   138 | run                       in java.util.concurrent.FutureTask
|   895 | runTask . . . . . . . . . in java.util.concurrent.ThreadPoolExecutor$Worker
|   918 | run                       in     ''
^   662 | run . . . . . . . . . . . in java.lang.Thread
| Error Forked Grails VM exited with error

请帮忙,即使只是指示我如何获得更多日志来调试问题。谢谢

编辑:

发现问题。我做了没有依赖的Grails项目的战争,它表明我需要降级我的Spring和Hibernate版本的外部项目

0 个答案:

没有答案