如何从应用程序子项目中的gradle子项目链接静态库

时间:2019-10-30 21:59:11

标签: c++ gradle

我有一个这样的项目结构:

MyProject/  
├── gradle.build  
├── gradle.settings  
├── MyCppApp/  
|   ├── gradle.build  
|   ├── gradle.settings  
│   └── src/  
|       └── main/  
|           └── cpp/  
|               └── my_cpp_app.cpp  
└── MyCppLib/  
    ├── gradle.build  
    ├── gradle.settings  
    └── src/  
        ├── main/  
        |   ├── cpp/  
        |   |   └── my_cpp_lib.h
        |   └── public/
        |       └── my_cpp_lib.h
        └── test/
            └── cpp/
                └── my_cpp_lib_test.cpp

我的gradle文件:

settings.gradle

include 'MyCppLib'
include 'MyCppApp'

build.gradle

configure(':MyCppApp') {
    dependencies {
//        compile project(':MyCppLib')   <-- this does not work
    }
}

MyCppApp/build.gradle

apply plugin: "cpp-application"


dependencies {
//    compile project(':MyCppLib')  <-- this does not work
}

MyCppLib/build.gradle

apply plugin: "cpp-library"
apply plugin: "cpp-unit-test"


library {
    linkage = [Linkage.STATIC]
}

在所示的两个地方和compile project(':MyCppLib')我都累了implementation project(':MyCppLib')。错误始终是找不到对应的功能,但据我了解,这些任务应由插件自动添加。
我希望有一个简单的解决方案,因为目标很明显,但除了一些Android项目之外,我还很陌生,无法通过喷气机来计算它。

1 个答案:

答案 0 :(得分:0)

所以终于我自己找到了答案,而且很简单。

val date = Calendar.getInstance().time val formatter = SimpleDateFormat.getDateTimeInstance() //or use getDateInstance() val formatedDate = formatter.format(date)

必须是

MyCppApp/build.gradle