All Projects → lizhangqu → NativeCompile

lizhangqu / NativeCompile

Licence: other
android 动态库远程依赖

Programming Languages

groovy
2714 projects
java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to NativeCompile

Javapackager
📦 Gradle/Maven plugin to package Java applications as native Windows, Mac OS X, or GNU/Linux executables and create installers for them.
Stars: ✭ 285 (+2092.31%)
Mutual labels:  native, maven
maven-wrapper
Apache Maven Wrapper
Stars: ✭ 128 (+884.62%)
Mutual labels:  maven
nativescript-vue-examples
🍈 NativeScript and Vue code samples.
Stars: ✭ 13 (+0%)
Mutual labels:  native
native-samples
Samples of modern build automation for native languages with Gradle
Stars: ✭ 140 (+976.92%)
Mutual labels:  native
postsack
Visually cluster your emails by sender, domain, and more to identify waste
Stars: ✭ 288 (+2115.38%)
Mutual labels:  native
kobby
Kobby is a codegen plugin of Kotlin DSL Client by GraphQL schema. The generated DSL supports execution of complex GraphQL queries, mutation and subscriptions in Kotlin with syntax similar to native GraphQL syntax.
Stars: ✭ 52 (+300%)
Mutual labels:  maven
cas-bootadmin-overlay
CAS Spring Boot Admin Server Overlay Template
Stars: ✭ 20 (+53.85%)
Mutual labels:  maven
repo.kotlin.link
Maven repository that proxy artifact request to one of know project-based maven repositories
Stars: ✭ 14 (+7.69%)
Mutual labels:  maven
javadoc-coverage
A Doclet to generate JavaDoc coverage reports ☕️🧪📗
Stars: ✭ 23 (+76.92%)
Mutual labels:  maven
getting-started-with-microprofile
📙 Everything you need to know about MicroProfile
Stars: ✭ 35 (+169.23%)
Mutual labels:  maven
springbook
java8+springMVC4+mybatis编写一个图书管理系统
Stars: ✭ 32 (+146.15%)
Mutual labels:  maven
titanium-material
Use the native Material UI/UX framework (https://github.com/CosmicMind/Material) in Titanium!
Stars: ✭ 14 (+7.69%)
Mutual labels:  native
design-patterns-in-java
☕ 📖 使用通俗易懂的案例,类图,及配套学习笔记来详解 Java 的二十三种设计模式 !
Stars: ✭ 35 (+169.23%)
Mutual labels:  maven
www-project-csrfguard
The aim of this project is to protect Java applications against CSRF attacks with the use of Synchronizer Tokens
Stars: ✭ 43 (+230.77%)
Mutual labels:  maven
ng-in-the-enterprise
Examples of how Angular is being run in the enterprise world.
Stars: ✭ 14 (+7.69%)
Mutual labels:  maven
SeleniumTDD
A Selenium TDD framework that incorporates key features of Selenium and TestNG which can be used to create web-based automation scripts.
Stars: ✭ 23 (+76.92%)
Mutual labels:  maven
hexen-dll-injector
HEX-EN DLL Injector
Stars: ✭ 20 (+53.85%)
Mutual labels:  native
Logistics-admin
SpringBoot+adminlte+maven的物流公司管理系统
Stars: ✭ 61 (+369.23%)
Mutual labels:  maven
keep-changelog-maven-plugin
Maven plugin to help creating CHANGELOG by keeping one format and solving merge request conflicts problem by extraction of new CHANGELOG entries to seperate files.
Stars: ✭ 22 (+69.23%)
Mutual labels:  maven
build-helper-maven-plugin
Build Helper Maven Plugin
Stars: ✭ 77 (+492.31%)
Mutual labels:  maven

Android Gradle Native Compile Plugin

依赖插件

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'io.github.lizhangqu:native-compile-plugin:1.0.0'
    }
}

apply plugin: 'native-compile-plugin'

nativeCompile {
    defaultClassifier 'armeabi' //可选配置,如果依赖中没有指定classifier,则拷贝到此abi目录
}

依赖动态库

dependencies {
    nativeCompile "$groupId:$name:$version:$classifier@so"
}

其中classifier可选,其值为 armeabi, armeabi-v7a, arm64-v8a, x86, x86_64, mips, mips64其中一个,不是这些值会抛异常。 并且依赖中的ext @so是否需要携带取决于发布时默认的文件是否是so,即packaging是否为so。如果存在classifier, 则@so为必选项,默认值为@jar,为了让其寻找so,需要手动指定为@so。 不支持引入所有abi,只支持单个abi逐个引入

dependencies {
    nativeCompile 'com.snappydb:snappydb-native:0.2.0:armeabi@so'
    nativeCompile 'com.snappydb:snappydb-native:0.2.0:x86@so'
    nativeCompile 'com.snappydb:snappydb-native:0.2.0:mips@so'
    nativeCompile "com.snappydb:snappydb-native:0.2.0:armeabi-v7a@so"
}

如果依赖了非.so的远程库,则构建过程不会发生异常,但是该文件会被忽略,如

dependencies {
    nativeCompile 'com.android.support:appcompat-v7:26.1.0'
}

在评估配置完成后,nativeCompile依赖会将对应的so拷贝到相应的jniLibs下,命名方式为libname.so,如果对应的文件是以lib开头,则不添加lib前缀

当前不支持将动态库拷贝到buildType或者flavor下的目录,需求强烈后续考虑添加

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].