与IntelliJ 14.1.4中的项目路径有些奇怪

时间:2015-07-23 20:29:47

标签: intellij-idea packages

所以,在我的intelliJ项目中,某些东西开始变得怪异了。我甚至尝试删除iml和.idea数据,但无济于事。

我去项目结构。在那里,我有一个内容根。 Withing,我有三个文件夹 - 一个用于我的jar(和jni lib),一个用于Samples,一个用于Tools(只是用于使用jar的工具)。罐子,样品和工具标记为蓝色(来源)。

在jar文件夹中,我有我的源代码树(com \ company \ projectname \ XXX),一个lib文件夹,一个用于我的JNI lib的文件夹和一个我创建的文件夹,名为'junit',这是这个问题的焦点。它在项目结构中以绿色标记(测试)。

在内部,我的文件夹结构与我的代码类似:com \ company \ projectname \ _unit。

当我在junit \ com \ company \ xxx \ junit中打开一个文件时,我的View by Entry Number Entry Number: 1 You picked 1 Name: adam adams Phone Number: 111-111-1111 Email: aa@aa.com 0 行下面有一个大的红色下划线,它告诉我:“包名称'com.company.xxx.junit'确实如此不对应文件路径'junit.com.company.xxx.junit'。

我的印象是将文件夹标记为'Tests'会指示IDE将其用作“父”文件夹,如果愿意,则无​​需添加其他文件夹名称。

如何将代码与单元测试分开,实际上,创建两个junit测试套件(一个用于内部使用,另一个是用于分发的'骨架'),将它们放在一个“伞”文件夹下,而不是使用该文件夹名称添加包名称?

更新:项目结构:

enter image description here

2 个答案:

答案 0 :(得分:1)

根据您的屏幕截图,问题是junit目录是另一个源目录的子目录,即MyProvider。源目录(无论是“生产”源还是单元测试源目录)不能是另一个源目录的子目录。

您需要:

  1. junit目录移出MyProvider,使其成为兄弟目录,或
  2. 取消标记MyProvider作为源目录,在main中创建MyProvider(或某个此类目录),将其标记为源目录,然后移动com目录/包进入main
  3. 选项2是处理此问题的首选方法,因为它遵循非常常见的目录结构标准。

    更新(在OP发表评论后)

    以下是一些截图,显示了您想要的配置: enter image description here enter image description here

答案 1 :(得分:0)

我删除了.IdeaIC15文件夹并重新开始。现在工作。无论是作为更新的一部分还是在操作过程中,都必须在配置中混淆一些东西。我已经拍摄了备份副本,所以如果再次发生这种情况,我会检查一下。