Eclipse 中具有不同输出文件夹的两个不同源文件夹具有相同类型的 java 源文件;未编译

发布于 2024-10-05 18:29:49 字数 1194 浏览 6 评论 0 原文

我正在尝试在 Eclipse SDK 中构建一个非常简单的 java 项目 版本:3.6.1 构建 ID:M20100909-0800

具有两个不同的源文件夹,其中不同的输出文件夹具有相同的 java 源文件。 但是,在项目中加入 CTE。

下面是项目的 .classpath 文件:-

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" output="myBin" path="mySrc"/>
    <classpathentry kind="src" output="yourBin" path="yourSrc"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

还可以在下面的 Project Explorer 屏幕截图中找到:-

alt text

我还发现 这个 在谷歌搜索时。

任何解决此问题的方法都将受到高度赞赏。 谢谢。 ;)


编辑:

实际上,我有一个项目,我正在不断增强该项目,并希望将所有版本保留在一起。我从此处。欢迎任何对此或更好方法的黑客攻击。

I am trying to build a very simple java project in Eclipse SDK
Version: 3.6.1
Build id: M20100909-0800

having two different source folders with different output folders with same java source file.
But, getting CTE in the project.

Below is the .classpath file for project :-

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" output="myBin" path="mySrc"/>
    <classpathentry kind="src" output="yourBin" path="yourSrc"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

Also find below Project Explorer screenshot :-

alt text

I also find this while googling.

Any workaround for this is greatly appreciated.
Thanks. ;)


Edit :

Actually, I have a single project, which I am enhancing continuously and want to keep all versions together. I googled this approach from here. Any hack for this or better approach is welcomed.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

断肠人 2024-10-12 18:29:49

Eclipse 源文件夹中不能有两个具有相同 FQCN(完全限定类名)的类。

但是,您可以在 CLASSPATH 上拥有两个具有相同 FQCN 的类。一个位于源文件夹中,另一个位于任何依赖项(例如 JAR 文件)中。然后,类加载器找到的第一个类将被 JVM(Java 虚拟机)加载并使用。所以这里 CLASSPATH 上的顺序很重要。

希望这有帮助。

You cannot have two classes of the same FQCN (Fully Qualified Class Name) in the Eclipse source folders.

However, you can have two classes of the same FQCN on the CLASSPATH. One in the source folder and another in any of the dependencies (e.g. JAR files). Then the first one found by the class-loader is loaded and used by the JVM (Java Virtual Machine). So here the order on the CLASSPATH matters.

Hope this helps.

開玄 2024-10-12 18:29:49

最简单的解决方法是为每个源文件夹指定不同的包名称。如果您想保留版本,您可以执行以下操作之一:

  1. 使用源代码控制。
  2. 使用历史内置的eclipse。
  3. 将整个项目复制到具有版本名称的项目,而不仅仅是源文件夹。
  4. 将源文件夹复制到不是源文件夹的目录。

The easiest workaround is to give different package name for each source folder. if you want to keep versions you can do one of:

  1. use source control.
  2. use eclipse built in history.
  3. copy the entire project to a project with the version name, and not only the source folder.
  4. copy the source folder to a dir which is not source a folder.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文