Eclipse:声明的包与预期的包不匹配

Hen*_*yen 80 java eclipse package

我在导入外部项目时遇到问题.我将文件 - >导入... - >现有项目导入工作区,选择项目所在的文件夹并导入所有内容 - 但项目的软件包名称似乎不是Eclipse所期望的.包名都有前缀:

prefix.packagename1
prefix.packagename2
Run Code Online (Sandbox Code Playgroud)

等等

但Eclipse期望

src.prefix1.prefix.packagename1
src.prefix1.prefix.packagename2
Run Code Online (Sandbox Code Playgroud)

因为目录是src/prefix1/prefix/package1

我真的不想乱用外部代码.如何告诉Eclipse忽略目录"src/prefix1"?或者我还能做什么?

Jon*_*eet 97

只需进入构建路径并将源路径更改src/prefix1src.

右键单击src目录并选择"构建路径/从构建路径中删除" 可能最容易,然后找到该src/prefix1目录,右键单击它并选择"构建路径/用作源文件夹".

  • 请注意,Jon的建议有效,但可能需要重新启动eclipse. (23认同)
  • 我如何撤消刚才做的事情?我点击了"构建路径/用作源文件夹",无处可用.编辑:我的问题的答案是进入"配置构建路径"并从列表中删除不是src /或gen /的时髦的东西 (2认同)
  • @SamikR哇...谢谢。我希望我的15分钟回来,蚀! (2认同)
  • 关闭/打开prj为我工作... Eclipse是一个很棒的工具,它有时会忘记它 (2认同)

小智 62

我刚遇到这个问题,由于Skeet先生的解决方案对我不起作用,我将分享我是如何解决这个问题的.

事实证明我在声明它是源目录之前打开了'src'下的java文件.

右键单击eclipse中的'src'目录后,选择'build path',然后选择'Use as Source Folder'

关闭并重新打开已经打开的java文件(F5刷新它不起作用).

如果从"prefix1"开始,java文件的路径与文件中的包对齐(例如来自请求者的问题prefix1.prefix.packagename2).这应该工作

Eclipse应该不再抱怨'src'.


Vla*_*lad 10

将您的问题*.java文件移动到其他文件夹.

单击"src"项并按"F5".

红色十字架将消失.

将*.java文件返回"package path",单击"src"项并按"F5".

一切都应该没问题.