网页信息提取软件工具包MetaSeeker的服务器程序是用Java编写的,使用SVN管理,编辑器是Eclipse,并安装subclipse插件,提供访问SVN服务器的客户端工具。当从另外一台同样编程环境的计算机上检出MetaSeeker软件工程时,如果是一个Java工程,在这一台新计算机上编辑源代码,就会弹出一个告警:
this compilation unit is not on the build path of a java project
主要原因是在SVN服务器上并没有保存工程配置信息(project),所以,在新计算机上并不知道这是个java工程,所以,在新计算机上应该告诉Eclipse这是一个Java工程,但是,找了半天,也没有找到在哪修改工程类型。后来采用一种比较土但是有效的方法。
因为MetaSeeker的工程全部是Ant工程,一开始是在网上找了一个Spring Framework开发框架软件工程的模板,当时在Eclipse中第一次建立的时候,选择菜单File->New->Project,并选择“从Ant工程创建”,Eclipse的工程环境都是根据Ant生成的,所以,在检出到新计算机上也这样操作。但是,在用Subclipse检出时虽然也询问是否从Ant工程创建Eclipse工程,但是,好像不能指定SVN服务器上的build.xml,只能用本地的,所以,需要分解成下面几步:
- 使用subclipse检出并建立一个默认类型的工程
- 在Eclipse上将该工程删除,但是保留内部不删除
- 在Eclipse上执行从Ant文件创建工程操作
至此,新检出的工程既保持与SVN服务器的连接,也恢复成Java工程,问题解决。就是有些别扭,每给同事装一套MetaSeeker工程就得折腾一次。