我正在使用 Spring 3.1 构建一个 Google App Engine 应用程序,并且在将成员连接到我的一个 jar 中时遇到问题。
我有三个项目:
server
server.model
server.persistence
我有一个 ant 构建脚本,因此当我的工作区构建时,它会为server.model
and创建 jar server.persistence
,并将它们放在server
项目的正确 lib 目录中。
在中,我可以从和server
中自动连接东西,但是在我的bean 中,即使它们与 中的完全相同,也没有连接。 server.model
server.persistence
server.model
server.persistence
server
我的 servlet 应用程序配置中的片段:
<context:component-scan base-package="com.impersonal.server"/>
<bean autowire="byType" id="appEngineDataStore" class="com.impersonal.server.persistance.AppEngineDataStore"/>
<bean autowire="byType" id="userList" class="com.impersonal.server.model.UserList"/>
server
我在项目和项目中都有以下代码server.model
,只有服务器一个得到满足。这是失败的一个:
package com.impersonal.server.model;
import java.util.ArrayList;
import java.util.UUID;
import org.springframework.beans.factory.annotation.Autowired;
import com.impersonal.server.persistance.AppEngineDataStore;
import com.impersonal.server.persistance.IDataStore;
public class UserList extends ArrayList<User>
{
private UserList(){}
//this is always null, but the same line in a class in the other project works
private @Autowired AppEngineDataStore _dataStore;
public UserList(UUID userId, String tempId)
{
String poo = "poo";
poo.concat("foo ");
int i = 3;
}
}
编辑:
刚刚在server.model
项目中做了一个测试,试图@Autowired 一些我没有在我的应用程序配置中定义为 bean 的东西,并且没有得到任何错误。如果我为项目做同样的事情,我应该得到一个“没有找到这样的 bean”错误server
。
任何想法为什么?