我正在查看android开发者网站提供的示例项目项目,我发现文件Beam.java
已在包中声明为package com.example.android.beam;
,其文件夹结构为“.. \ src \ COM \示例\机器人\光束\ Beam.java”。在类似的目录结构中还有另外两个文件BuildConfig.java
和R.java
,但在一个完全不同的目录“.. \ gen \ com \ example \ android \ beam \ Beam.java”中,但是package com.example.android.beam;
的相同包声明。所有这些文件是否在同一个包中,即使它们位于不同的文件夹中? IDE是否将后两个文件放在不同的文件夹中,以明确它们是自动生成的,还是有另一个原因?
答案 0 :(得分:2)
名为“gen”的文件夹是一个自动生成的文件夹,其中包含也是自动生成的文件。换句话说,不要担心“gen”文件夹,你的包和文件以及你做的任何内容都将在“src”文件夹中。
例如,Android IDE生成文件“R.java”,其中包含代码中使用的元素ID,即。 “R.id.some_element”,“R.string.some_string”。
答案 1 :(得分:1)
它们是自动生成的,如你所说,它们被放入/ gen / ....您写的内容必须放在/ src /...
中答案 2 :(得分:1)
不同文件夹中的文件可以在同一个包中吗?
是的,只要它们都被编译并打包到.dex文件中的同一目录中。