我需要在多个项目(其中一个是ProjectOne)中使用外部项目(ResuableProject)作为模块.到目前为止,我在这里所做的是:
在ProjectOne的settings.gradle中添加了以下内容
include ':ProjectOne', ':ResuableProject'
project(':ResuableProject').projectDir = new File(settingsDir, '../ResuableProject/module')
在build.gradle中添加了以下内容
dependencies {
compile project(':ResuableProject')
}
在gradle同步之后,没有任何错误,并且在项目资源管理器中包含了该模块,但是当我使用ResuableProject中的任何类时,它给我一个错误,即在我单击类名之前找不到该类,并且它提供了一个添加对ResuableProject的依赖的选项.当我选择该选项时,该类可以访问,并且看起来一切正常.
但是,当我构建项目并尝试运行它时,它会给我以下信息:
Error:Execution failed for task ':ProjectOne:compileDevDebugJava'.
> Compilation failed; see the compiler error output for details.
Error:(10, 30) error: package does not exist
我是否缺少某些东西,还是必须在ProjectOne中包含ResuableProject的源目录,如果可以,怎么办?
还有没有更好的方法可以跨多个应用程序使用一个公共项目? (不是jar或maven,因为我需要在每个项目中都包含源代码,而普通项目将托管在单独的git repo中)
以前,我将这种方法用于Eclipse(一个常见的Library项目),并将其包含在多个应用程序中.
更新:添加文件系统结构
workspace
----ResuableProject (Android Common stuff)
--------.git
--------module
----ProjectOne (Android App One)
--------.git
--------ProjectOne (module)
------------build.gradle
--------settings.gradle
----ProjectOne (Android App Two)
--------.git
--------ProjectOne (module)