当前位置: 首页 > 知识库问答 >
问题:

使用构建风格--正确地构建源文件夹和构建

邢承弼
2023-03-14

请注意:在泽维尔的回答之后编辑的回答

我试图在Android Studio中为一个相同的应用程序项目使用不同的构建风格。然而,我似乎有一个可怕的时间配置它适当地工作。

步骤:

productFlavors {
flavor1 {
    packageName 'com.android.studio.test.flavor1'
    }
flavor2 {
    packageName 'com.android.studio.test.flavor2'
    }
}
    null

**我检查了分级设置,显然使用自动导入已经启用。尽管如此,对build.gradle文件进行更改不会自动更新构建变体。注意:我还尝试使用Build-Rebuild项目和/或Build-Make项目。我仍然必须关闭项目,并重新打开更改才能生效。

共有1个答案

华炜
2023-03-14

对于Java源代码:

src/main/java
src/flavor1/java
src/debug/java

3都用于创建单个输出。这意味着它们不能定义同一个类。

src/flavor1/java/com/foo/A.java
src/flavor2/java/com/foo/A.java
import com.foo.A

此外,重要的是将相同的A类只放在相互排斥的源文件夹中。在本例中,不会同时选择src/flavor1/java和src/flavor2/java,而是同时选择main和flavor1。

如果您希望以不同的方式提供活动的不同版本,请不要将其放在src/main/java中。

 类似资料:
  • 我有如下内容:3个lib(libA,libB,libC),libB和libC依赖于libA。 一旦libA使用make完成构建,是否还有并行构建libB和libC的方法?

  • mongodb.java: 我认为Maven没有构建正确,但我不知道。(我运行了包Maven构建)

  • 问题内容: 我需要能够构建go应用程序的不同版本;“调试”版本和普通版本。 这很容易做到;我只是有一个const DEBUG,它控制应用程序的行为,但是每次我需要在构建类型之间进行交换时,都必须编辑配置文件,这很烦人。 我正在阅读有关go build(http://golang.org/pkg/go/build/)和标签的信息,我想也许我可以这样做: config.go: config.debug

  • 我们正在项目中使用mapstruct。虽然它适用于dto到域对象(比如EmployeeDTO到EmployeedData,具有类似属性)的总和,但我们需要处理传入的json字符串。我们正试图编写一个非常通用的映射程序,将传入的json字符串映射到java对象。 假设我们有这样的员工 {id: 1, name="xxx"}但它是以字符串形式出现的,因此我有一个mapstruct映射器 它工作不正常,

  • 问题内容: 我有一个包含单个模块和一些依赖项的项目。我想在一个包含编译模块的单独目录中创建一个jar。另外,我想在模块旁边提供依赖项。 无论我如何扭曲IntelliJ的“构建jar”过程,模块的输出都将显示为空(除了META-INF文件之外)。 问题答案: 这是使用IntelliJ 10构建jar的方法http://blogs.jetbrains.com/idea/2010/08/quickly-

  • 我正在尝试创建一个Jar用作Maven存储库 我已经构建了所有内容,所有类都准备好了。唯一的问题是gradlew./build包含了测试文件夹中的类和资源。我不希望这些作为jar的一部分,尤其是正在测试的资源文件。 因此,我的问题是,如何从jar构建任务中排除这些文件。我试过了 在我的身体里。格拉德尔:但那没用 我是Gradle和Maven的新手,所以任何洞察力都会有帮助。谢谢! 参考材料 bui