项目中缺少Java classpath文件夹但存在于项目的Windows目录结构中

时间:2012-10-04 15:34:05

标签: java eclipse classpath buildpath i2b2

我从i2b2.org站点下载了应用程序服务器Java源代码,并将其编译以进行部署。这个应用程序运行在JBoss之上。我在Eclipse中切换到的工作空间中有8个项目文件夹(这8个项目所在的根目录)。有几个错误。

看起来其他人遇到了同样的问题:

https://www.i2b2.org/software/augrepo.html

以下是编译时的完整错误列表:

enter image description here

这是一个:

Project 'edu.harvard.i2b2.common' is missing required source folder: 'gensrc'

如果我右键单击'edu.harvard.i2b2.common'项目,选择'Build Path',然后选择'Configure Build Path',并导航到'Source'选项卡,我看到我们丢失了文件夹中。

enter image description here

在Windows中,我看到该文件夹​​存在。看起来我的CLASSPATH期待文件夹,但项目没有包含它。在Eclipse中修复此问题的正确方法是什么?

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src/core"/>
    <classpathentry kind="src" path="gensrc"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry kind="lib" path="lib/commons/commons-codec-1.3.jar"/>
    <classpathentry kind="lib" path="lib/commons/commons-collections-2.1.1.jar"/>
    <classpathentry kind="lib" path="lib/commons/commons-httpclient-3.0.jar"/>
    <classpathentry kind="lib" path="lib/commons/commons-logging-1.0.4.jar"/>
    <classpathentry kind="lib" path="lib/jdbc/ojdbc14.jar"/>
    <classpathentry kind="lib" path="lib/dom4j/dom4j-1.6.1.jar"/>
    <classpathentry kind="lib" path="lib/hibernate/hibernate3.jar"/>
    <classpathentry kind="lib" path="lib/j2ee/jbossall-client.jar"/>
    <classpathentry kind="lib" path="lib/jaxb/jaxb-api.jar"/>
    <classpathentry kind="lib" path="lib/jaxb/jaxb-impl.jar"/>
    <classpathentry kind="lib" path="lib/jaxb/jaxb-xjc.jar"/>
    <classpathentry kind="lib" path="lib/spring/spring-2.0.jar"/>
    <classpathentry kind="lib" path="lib/jaxb/jaxb1-impl.jar"/>
    <classpathentry kind="lib" path="lib/jaxb/jsr173_1.0_api.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axiom-api-1.2.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axiom-dom-1.2.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axiom-impl-1.2.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axis2-adb-1.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axis2-adb-codegen-1.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axis2-codegen-1.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axis2-java2wsdl-1.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axis2-jibx-1.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axis2-kernel-1.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/axis2-saaj-1.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/mail-1.4.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/neethi-2.0.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/stax-api-1.0.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/woden-1.0.0M6.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/wsdl4j-1.6.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/wstx-asl-3.0.1.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/xml-apis-1.3.03.jar"/>
    <classpathentry kind="lib" path="lib/axis2-1.1/XmlSchema-1.2.jar"/>
    <classpathentry kind="lib" path="lib/junit/junit-4.4.jar"/>
    <classpathentry kind="lib" path="lib/jaxb/activation-1.1.jar"/>
    <classpathentry kind="output" path="classes"/>
</classpath>

1 个答案:

答案 0 :(得分:2)

经过一番调查和排查后,

新答案(i2b2具体)

  1. 您必须首先运行Apache Ant Scripts ...按照i2b2文档中的CRC_Installation_Guide.pdf进行操作

  2. 然后进入Eclipse&gt;打开所有项目文件夹的父文件夹。文件&gt;切换工作区&gt;其他(选择8个项目文件夹的父文件夹)...通常称为“服务器”。 C:\ i2b2 \服务器

  3. 如前所述,你会再次看到19个错误。那是因为Apache Ant脚本应该创建文件夹和更多文件,因此引用被搞砸了。

  4. 刷新所有项目文件夹以获取最新的文件夹和文件..如果您要自动编译Eclipse,那么您就完成了。否则,您必须构建工作区。

  5. 然后显然要更新7个文件的JDBC连接字符串... 5 * -ds.xml文件以及CRCApplicationContext.xml和CRCLoaderApplicationContext.xml。

  6. 旧答案(不正确,但在类似问题上可能会帮助其他人):

    (解决了几个不同来源)

    1. 请按照以下步骤操作:http://www.bradjanke.com/2011/04/12/project-%E2%80%98project-name%E2%80%99-is-missing-required-source-folder-%E2%80%98gen%E2%80%99/

    2. 点击项目文件夹&gt;来源(菜单)&gt;清理......

    3. 右键单击Project文件夹&gt;刷新..这将拉出Windows在该项目的目录结构中的文件

    4. ...为2个项目做了这个并且解决了原来的19个。现在我有更多错误,但更容易修复。