发布library到Maven仓库

基于UPNP的CyberLink库详细说明 开源库CyberLink是基于UPNP规范的一个库,在很多场合有着重要的应用,例如:遥控器开发等等...... 立即下载

发布library到Maven仓库

在Android Studio中想要使用一些第三方类库的时候非常方便,只需要在build.gradle中加入一行代码就可以了:

dependencies {
    compile 'com.google.code.gson:gson:2.3.1'
}

刚从Eclipse转过来的时候感觉太方便了,也不用下jar包然后拷贝到libs目录了,重要的是以后升级起来灰常方便,改个数字就好了。
那究竟它里面是怎么运转的呢?其实Android Studio是从Maven仓库中下载所配置的libraray。
总的来说,Android只有两种存放library的服务器就是jCenter和Maven Central:

  • jCenter
    jCenter是由bintray维护的Maven仓库。你可以在这里查看它所有的library。
    想要在项目中使用jCenter必须要在项目的build.gradle中像如下这样进行声明:

    allprojects {
        repositories {
            jcenter()
        }
    }
  • Maven Central
    Maven Central是由sonatype维护的Maven仓库。想要在项目中使用Maven Central需要在项目的build.gradle文件中像下面这样进行声明:

    allprojects {
        repositories {
            mavenCentral()
        }
    }

    虽然jCenter和Maven Central都是Android标准的library maven仓库,但是他俩是由不同提供者维护,并且存放到完全不同的服务器上,所以他俩之间毫无关系。
    除了这两个标准的服务器外,如果我们使用的library作者把该library放到自己的服务器上,我们还可以自己定义特有的Maven仓库服务器。例如Twitter的Fabric.io就是这种情况,它们在https://maven.fabric.io/public上维护了一个自己的Maven仓库,如果你想使用Fabric.io上的library你必须要自己定义仓库的url:

    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }
    然后才能正常使用
    dependencies {
        compile 'com.crashlytics.sdk.android:crashlytics:2.2.4@aar'
    }

    上传到自建服务器需要定义仓库的url,所以会比上传到标准的maven仓库使用起来要更麻烦。

    至于上传到jCenter还是Maven Central上面就要看开发者个人的爱好了,当然在这两个上面都上传是最方便的。在Android Studio开始的几个版本中,它将Maven central 作为默认仓库。新建项目之后build.gradle中会自动生成Maven central仓库的配置。
    但是Maven Central最大的问题就是上传library非常困难,同时还会由安全方面的原因,所以后来Android Studio将默认仓库替换成jCenter。所以最近的几个版本中创建项目之后,build.gradle中会默认定义jCenter而不是Maven Central。

jCenter相对Maven Central来说更好的几个主要原因:

  • jCenter通过CDN发送library,开发者会由更快的下载体验。
  • jCenter作为世界最大的Java仓库,所以它上面的library会更多。
  • jCenter上传library更简单,不需要像在Maven Central上那么复杂。
  • jCenter的用户界面更友好。
  • jCenter的bintray网站上可以通过一键实现将library上传到Maven Central上。

所以我们后面要讲的就是如何上传library到bintray的jCenter中然后再一键上传到Maven Central上。

说之前先通过picasso为例认识一下几个主要的部分:
我们在使用picasso时,它会告诉我们按照如下使用:

compile 'com.squareup.picasso:picasso:2.5.2'

或者

<dependency>
  <groupId>com.squareup.picasso</groupId>
  <artifactId>picasso</artifactId>
  <version>2.5.2</version>
</dependency>

这两种方法分别对应了jCenter和Maven Central中的使用方法.jCenter中com.squareup.picasso就是grounId,通常我们以开发者的报名后面紧跟library的名字来命名groupId, picasso是artifactId,artifactId也就是library真实的名称。,后面的2.5.2就是当前的version.

看到这里应该清楚其实就是Android Studio从Maven服务器上去下载我们所配置的library然后与我们项目一起进行编译。从Maven仓库上下载的是该library的jar或者aar文件。

仓库中存储的有两种文件类型的library:jar和aar。jar包大家都知道。那什么是aar呢?aar是在jar的基础上进行开发的,这是因为Androd Library需要植入一些特有的文件,例如资源文件、assets、jni、清单文件等。而这些都不是jar的标准,因为aar就是在jar包的基础上新增了对其他文件的封装。当然他和jar包一样,在本质上都是zip包,下面我们看一下aar的目录结构:

- /AndroidManifest.xml
- /classes.jar
- /res/
- /R.txt
- /assets/
- /libs/*.jar
- /jni/<abi>/*.so
- /proguard.txt
- /lint.jar

讲到这里已经清楚了groupId、artifactId以及aar了,那接下来我们就讲一下具体的发布流程了:
image

在Bintray上创建一个包

  • 登陆bintray。
  • 选择Maven后进入。
    image
  • 添加新包。
    image
  • 填写包信息
    image

    包名这里对于单词之间要用-分割。

  • 然后会提示已经上传。
    到这里我们已经在bintray上创建了一个Maven仓库,接下来要做的就是上传library。

在Sonatype上传件一个Maven Central账户。

  • 注册Sonatype账号
    在Sonatype上注册账号。
    注册完登陆后需要在JIRA中创建一个issue,这样他就会允许你上传匹配Maven Central提供的GROUP_ID的library。 image

    Project: Community Support - Open Source Project Repository Hosting

    Issue Type: New Project

    Summary: 你的 library名称的概要,比如The Cheese Library。

    Group Id: 输入根GROUP_ID,比如, com.charon.cyberlink 。一旦批准之后,每个以com.charon.cyberlink开始的library都允许被上传到仓库,比如com.charon.cyberlink.somelib。

    Project URL: 输入任意一个你想贡献的library的URL,比如, https://github.com/CharonChui/CyberLink4Android。

    SCM URL: 版本控制的URL,比如 https://github.com/CharonChui/CyberLink4Android.git。
    其他的都不用管,写完之后创建就可以了。 然后就是开始等,大约一周左右就会获准将自己的library分享到Maven Central。

  • 下面就是Bintray中的账户选项中填写Sonatype用户名。
    image

  • 开启自动注册功能,为了能让我们通过jcenter上传的libraray自动发布到Maven Central中

    • 使用下面的命令生成一个key。如果是windows用户需要使用cygwin。否则不能执行
      gpg --gen-key
      后面会一步步的进行提示,按照提示输入相应内容就好。

      创建完成后可以使用gpg --list-keys命令来查看创建key的信息.
      接下来需要将生成的key上传到keyserver上才能发挥作用。
      image

      如上图所示将key上传到keyserver让它发挥作用,运行如下命令,将下面的PUBLIC_KEY_ID替换成上面2048R/后面的数字,如我的是B861C367
      gpg --keyserver hkp://pool.sks-keyservers.net --send-keys PUBLIC_KEY_ID

    • 运行以下命令

      gpg -a --export yourmail@email.com > public_key_sender.asc
      gpg -a --export-secret-key yourmail@email.com > private_key_sender.asc

    运行完上面的两个命令后,会在当前目录分别生成public_key_sender.asc以及private_key_sender.ask两个文件,下面我们就打开这两个文件的内容,填写到Bintray的Edit Profile页面中的GPG注册部分。
    image

    • 开启自动注册。
      在Edit Your Profile页面找到Repositories后,选择maven后的edit。然后将GPG sign uploaded files using Bintray’s public/private key pair.打上勾就可以了。
      image
      image

接下来就是如何将Android Studio中的Library Module进行上传

首先是修改项目的build.gradle文件。如下:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        // 注意gradle版本要再1.1.2以上,之前的版本存在问题。
        classpath 'com.android.tools.build:gradle:1.2.3'
        // 下面的部分就为新添加的。
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.2'
        classpath 'com.github.dcendents:android-maven-plugin:1.2'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

修改local.properties文件,在里面配置apikey、用户名以及密码,以便bintray进行验证。之所以要把这些东西配置到该文件中是因为这些信息都比较敏感,不能分享到别处,包括版本控制里面。而在创建项目的时候local.properties已经被添加到.gitignore中了,所以这些数据不会被上传:
需要添加如下三行代码:

bintray.user=YOUR_BINTRAY_USERNAME  // 这里一定要用小写,不要用CharonChui不然会报错的,因为他会根据该用户名去找指定package,如果是大写他就找不到了。
bintray.apikey=YOUR_BINTRAY_API_KEY
bintray.gpg.password=YOUR_GPG_PASSWORD

Api key可以在Binatry官网上面的Edit Profile页面下的API Key中获取。
最后要做的就是修改library module中的build.gradle文件。
下面这是最初的状态:

apply plugin: 'com.android.library'

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

下面就是修改之后的文件:

apply plugin: 'com.android.library'
apply plugin: 'com.github.dcendents.android-maven'
apply plugin: "com.jfrog.bintray"

// This is the library version used when deploying the artifact
version = "1.0.0"

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 22
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

def siteUrl = 'https://github.com/CharonChui/CyberLink4Android'      // Homepage URL of the library
def gitUrl = 'https://github.com/CharonChui/CyberLink4Android.git'   // Git repository URL
group = "com.charon.cyberlink"                      // Maven Group ID for the artifact

install {
    repositories.mavenInstaller {
        // This generates POM.xml with proper parameters
        pom {
            project {
                packaging 'aar'

                // Add your description here
                name 'cyberlink-android'
                description = 'CyberLink for Android is a development package for UPnP™ developers on Android development.'
                url siteUrl

                // Set your license
                licenses {
                    license {
                        name 'The Apache Software License, Version 2.0'
                        url 'http://www.apache.org/licenses/LICENSE-2.0.txt'
                    }
                }
                developers {
                    developer {
                        id 'CharonChui'
                        name 'Charon Chui'
                        email 'charon.chui@gmail.com'
                    }
                }
                scm {
                    connection gitUrl
                    developerConnection gitUrl
                    url siteUrl

                }
            }
        }
    }
}

task sourcesJar(type: Jar) {
    from android.sourceSets.main.java.srcDirs
    classifier = 'sources'
}

task javadoc(type: Javadoc) {
    source = android.sourceSets.main.java.srcDirs
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}

task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}
artifacts {
    archives javadocJar
    archives sourcesJar
}

Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())

// https://github.com/bintray/gradle-bintray-plugin
bintray {
    user = properties.getProperty("bintray.user")
    key = properties.getProperty("bintray.apikey")

    configurations = ['archives']
    pkg {
        repo = "maven"
        // it is the name that appears in bintray when logged
        name = "cyberlink-android"
        websiteUrl = siteUrl
        vcsUrl = gitUrl
        licenses = ["Apache-2.0"]
        publish = true
        version {
            gpg {
                sign = true //Determines whether to GPG sign the files. The default is false
                passphrase = properties.getProperty("bintray.gpg.password") //Optional. The passphrase for GPG signing'
            }
//            mavenCentralSync {
//                sync = true //Optional (true by default). Determines whether to sync the version to Maven Central.
//                user = properties.getProperty("bintray.oss.user") //OSS user token
//                password = properties.getProperty("bintray.oss.password") //OSS user password
//                close = '1' //Optional property. By default the staging repository is closed and artifacts are released to Maven Central. You can optionally turn this behaviour off (by puting 0 as value) and release the version manually.
//            }
        }
    }
}

到这一步就可以开始上传到bintray了,接下来开启Android Studio的Terminal中。
- 检查代码的正确性,以及编译library文件(aar,pom等)。执行如下命令:
./gradlew install
正确的话会提示BUILD SUCCESSFUL
- 上传编译的文件到bintray,使用如下命令:
./gradlew bintrayUpload
成功的话会提示SUCCESSFUL
接下来到bintray上检查一下你得package你会在版本区域发现新上传的版本。点击进去就能发现我们上传的library文件。
image

点击该版本进入后可以看到所有的文件目录。
image

到这里你的library就已经上传了,任何人都可以使用,但是别高兴的太早,因为现在只是上传到了你自己的私人Maven仓库,而不是jCenter上,如果别人使用你library,他必须要先定义仓库的url, 如下:

repositories {
    maven {
        url 'https://dl.bintray.com/charonchui/maven/'
    }
}
...

dependencies {
    compile 'com.charon.cyberlink:cyberlink-android:1.0.0'
}

这样终究是不方便的,因为别人还要单独的去配置你仓库的url那么接下来就是怎么将bintray上我们的仓库上传到jCenter中呢?
把library同步到jCenter上非常容易。只需要访问bintray,然后点击Add to jCeter然后在新出来的页面直接点击Send即可。
image
现在我们就需要等待bintray团队审核我们的请求,一般会在两三个小时左右,如果审核通过,会收到一封邮件通知。通过这一步之后任何开发者都可以不用配置仓库url直接使用了。
想检查一下自己的library是否在jCenter上存在,可以直接访问http://jcenter.bintray.com,然后根据你的groupId直接进入相应的目录查看即可。这里要说一下,这个链接到jCenter是一个只需要做一次的操作,如果以后对你的package做了修改,或者发布新版本等,这些改变会自动同步到jCenter上。同时,如果你要像删除某一个package,但是在jCenter仓库中的library不会被删除。它会一直存在,没法直接删除,因此如果你想要完全删除的时候,最好在移除package之前先在网页上把删除每个版本。
如何通过后也可以在bintray上面看到,这里已经不显示Add to jCenter按钮了,他会直接显示出来jCenter.
image

到这里你就可以在项目中直接使用:     

dependencies {
    compile 'com.charon.cyberlink:cyberlink-android:1.0.0'
}

但是,我悲剧了。提示失败了,为什么呢? 
image                 
原因就出来library这个module name这里,因为我这里的module那么是library所以它上传之后的路径就是library而不是cyberlink-android:
image  
所以通过这里能看出来它是使用当前module的名字的。我们只能通过如下方式去使用:

dependencies {
    compile 'com.charon.cyberlink:library:1.0.0'
}

这样就能正常使用了。 如果有些人感觉这样不好,就想要com.charon.cyberlink:cyberlink-android:1.0.0的方式,那就将Android Studio中library的名字修改为cyberlink-android后重新上传发布吧。

最后一步:上传library到Maven Central

并不是所有的开发者都使用jCenter。仍然会有一些人在使用Maven Central。因为此我们仍然需要将library上传到Maven Central上。要从jCenter中上传到Maven Central之前需要先完成以下两部分:

  • Bintray上的pacage已经链接到jCenter.
  • Maven Central上的仓库已经认证通过.

如果确认已经完成上面的授权后,上传library到Maven Central就非常简单了,只需要在package的详情页面点击Maven Central的链接。
image
直接进入下一个页面:
image
然后再出来的页面输入Maven Central对应的用户名和密码点击Sync就可以了。上传到Maven Central的library是非常严格的,比如+号是不能在library版本的依赖定义中使用的。
完成之后,你可以在 Maven Central Repository中找到你的library。

更多内容: github

CyberLink_PowerDVD_Ultra_v17.0.2316.62_简体中文破解版 CyberLink_PowerDVD_Ultra_v17.0.2316.62_简体中文破解版,资源收集共享,如有侵权,请联系删除! 立即下载

相关推荐

CyberLink PowerDVD 13破解器

CyberLink PowerDVD 13破解器

CyberLink for Java 编程指南

这篇是翻译官网的编程指南,官网地址:http://www.cybergarage.org/pdfdoc/clinkjavaproguide.pdf   目录: 1  简介 2  步骤 3  设备     3.1  类概述     3.2  描述     3.3 初始化     3.4 通知     3.5 嵌入的设备     3.6 服务     3.7 控制

蓝斯的专栏 3238

[魅力四射4.0].CyberLink.MediaShow.v4.0.注册机.rar

[魅力四射4.0].CyberLink.MediaShow.v4.0.Multilingual.Keymaker.Only-CORE.rar

maven添加本地library

最靠谱的方法使用 mvn install命令,将本地的jar包安装至本地仓库中,可以用mvn命令,也可以用warpper,即mvnw命令。 命令如下: ./mvnw install:install-file -DgroupId=cfca -DartifactId=cfca -Dversion=1.0 -Dpackaging=jar -Dfile=src/main/resources/libs/S...

zzyzenith的博客 1772

ctx->cvdl->cuvidGetDecoderCaps(&ctx->caps8) failed -> CUDA_ERROR_DEINITIALIZED: driver shutting down

ffplay -vcodec h264_cuvid sample_720p-2.h264 [quantum6@freeswitch freeswitch]$ ffplay -vcodec h264_cuvid sample_720p-2.h264 ffplay version 4.3.1 Copyright (c) 2003-2020 the FFmpeg developers built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-44) .

柳鲲鹏 2409

别再死记硬背Payload了!深入理解Flask/Jinja2 SSTI的Python对象继承链与魔术方法

本文深入解析Flask/Jinja2 SSTI漏洞的底层原理,从Python对象模型出发,详细讲解如何通过魔术方法链实现RCE。文章揭示了Python对象继承链与魔术方法的精妙设计,提供了防御与绕过SSTI漏洞的实用技巧,帮助开发者深入理解漏洞本质并采取有效防护措施。

weixin_42525738的博客 356

在IDEA中为项目引入maven中央仓库中的依赖包

如果是maven项目直接在pow.xml文件中引入依赖即可,这些依赖包将会下载到maven配置好的仓库中。但是有些时候我们并不希望其下载到全局的仓库中而是只在项目中使用,或者项目根本不是maven项目,没有 pow.xml文件,这个时候也许你会到网上下载好这个依赖包放入到工程,这样自然是可以的。但是也可以在IDEA中直接操作,但是如果没有加速器的话,可能下载时间比较长。下列以一个普通的工程引入ne...

ChesterChai的博客 2815

实现 PDF 添加水印的五种方式

PDF(Portable Document Format,便携式文档格式)是一种流行的文件格式,它可以在多个操作系统和应用程序中进行查看和打印。在某些情况下,我们需要对 PDF 文件添加水印,以使其更具有辨识度或者保护其版权。本文将介绍如何使用 Spring Boot 来实现 PDF 添加水印的方式。

逸轩 6475

maven的下载、安装和仓库配置

前言maven是一种全新的项目构建方式,让我们的开发更加简单,高效。Maven主要做的是两件事:统一开发规范与工具统一管理jar包Maven还可以管理项目的整个声明周期,包括编 译,构建,测试,发布,报告等等。目前Apache下绝大多数项目都已经采用Maven进行管理。而Maven本身还支持多种插件,可以方便更灵活的控制项目。准备工作Java开发环境(JDK)maven下载地址:http://ma...

smile_light的博客 5762

《UE4游戏开发》之 《音效系统的实现》

音效系统需要负责管理什么事情: 1.1 确定声音控制的分类:如背景音乐、技能音效、界面音效、角色配音等,不同游戏对声音有不同的分类 1.2 控制每个分类的声音的开启与关闭,以及调节每个分类声音的大小 解决如何分类: 2.1 首先需要知道ue4为声音分类提供了什么:SoundClass通常需要一个根分类【SC_RPG_Master】,便于总体控制音效,以及指定引擎默认启动的音效 打开SoundClass资产【SC_RPG_Master】,对根控制的设置,将逐级传递并按比例进行设置,以此达到控制一类声音的目的.

qq_21919621的博客 2127

使用buildroot系统的qmake编译QT出现Unknown module(s) in QT: xxxx 的错误解决方法

可以看到,我这里使用的是 qt5base-5.15.2 目录下的qmake,这个qmake只包含了基础的qt模块,而额外添加的qt模块没有包含进去,需要使用。可以看到我这里是有的,如果你跟我一样,模块存在,但是还是报找不到对应模块的错误的话,大概率是跟我一样,用错qmake了,看第二点。在包含 qt5base 目录下查看,是否有对应模块的目录,如果没有的话,需要通过make menuconfig 添加一下。目录下的qmake才可以。

T541132的博客 2490

如何发布Android Library到Maven私有仓库

前言 在我们的项目架构中,一定存在一些基础的模块,这些模块可以在多个app上通用,这种情况我们一般会将这些模块封装成Android Library统一维护,并上传到仓库方便其他小组使用。仓库可以选择如mavenCentral这类公开的仓库,但是我们一般选择搭建自己的maven私有仓库,比如:Sonatype Nexus。本文就一步步的教大家如何将Android Library发布到maven私有仓库。 添加maven仓库配置 在项目的根目录下的gradle.properties中添加私有仓库的配置,如下:

公众号:BennuCTech 2607

从零解析:富斯i6遥控器与STM32的IBUS协议通信实战

本文详细解析了富斯i6遥控器与STM32通过IBUS协议通信的实战指南,涵盖硬件准备、协议解析、驱动实现及常见问题解决。特别适合机器人及智能小车开发者,提供低成本、高可靠性的无线控制方案,助力快速实现多通道控制功能。

weixin_29193359的博客 441

maven没有repository_Gradle插件之maven-publish:发布android library到maven仓库

maven插件已经过时,官方推荐使用这个插件来实现将我们的代码发布到 Apache Maven仓库的功能。使用plugins 任务 Tasks所有以下任务都归在名为publishing类型为PublishingExtension的扩展下。generatePomFileForPubNamePublication为名为PubName的发布创建一个POM文件,填充已知元数据,如项目名称、项目版本和依赖项...

weixin_39539733的博客 849

5G Multicast/Broadcast Services(MBS) (七) MBS广播DRX

当处于RRC_IDLE或RRC_INACTIVE或RRC_CONNECTED 状态时,如果为 G-RNTI 配置了broadcast DRX,则允许MAC entity使用broadcast DRX 操作不连续地监听此G-RNTI的PDCCH;此 G-RNTI 的 drx-onDurationTimerPTM 或 drx-InactivityTimerPTM 正在运行的时间,也就是。long DRX周期drx-LongCycle-PTM和drx-StartOffset-PTM定义DRX周期开始的子帧。

asd199086的博客 392

Android Google 支付接入

1. 从 2023 年 8 月 2 日起,所有新应用都必须使用结算库版本 5 或更高版本。自 2023 年 11 月 1 日起,现有应用的所有新版本都必须使用结算库版本 5 或更高版本。 2. 如果您的应用以 Android 14 或更高版本为目标平台,您必须更新到 PBL 5.2.1 或 PBL 6.0.1 或更高版本。

帅次的博客 9404

gradle引入子module配置_使用Gradle 将Library module 发布到本地 maven 仓库

将module发布到本地maven仓库在本地准备一个目录,当做maven仓库在项目的 gradle.properties 配置仓库信息(主要是POM文件信息)在module的 build.gradle 配置插件,任务,及代码信息执行发布任务本地 maven 查看引用本地仓库中的包1. 准备目录Example:E:\libs\localMaven2. 配置仓库信息在项目的 gradle.prop...

weixin_33265716的博客 444

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

通过Android Studio快速发布Library项目到maven仓库

本文转载自: 通过Android Studio快速发布Library项目到maven仓库 标签: maven仓库Android Studiogit 2016-06-21 22:46 1672人阅读 评论(0) 收藏 举报 本文章已收录于: 分类: 编程这些年(28) 作者同类文章X

hnnd123的博客 714

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

发布Android library到maven仓库

【代码】发布Android library到maven仓库。

冬瓜去哪儿的博客 418

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Android Library发布到Maven仓库以及使用

如同以往的博客一样,先来说说为什么要写这篇博客吧。昨天做了一个android类库,由于有资源文件,所以打包成了aar,于是顺利将其集成到其它项目中,看起来没问题可以用,但是调试时候发现类库dependency中compile的第三方包没有正确的打包进来。这就悲催了,总不能在新的项目中将类库中需要的包compile进来啥,这不久太low了么,于是绞尽脑汁想解决办法,在网上找到不少资料说将类库发布到本地

Yoryky的专栏 2521

Gradle插件之maven-publish:发布android library到maven仓库

maven插件已经过时,官方推荐使用这个插件来实现将我们的代码发布到 Apache Maven仓库的功能。

chuyouyinghe的专栏 2538

使用Gradle 将Library module 发布到本地 maven 仓库

将module发布到本地maven仓库 在本地准备一个目录,当做maven仓库 在项目的 gradle.properties 配置仓库信息(主要是POM文件信息) 在module的 build.gradle 配置插件,任务,及代码信息 执行发布任务 本地 maven 查看 引用本地仓库中...

choujiabang1843的博客 187

android studio 建立library,Android Studio创建Android Library发布至本地仓库

Android Studio创建Android Library发布至本地仓库发布时间:2020-04-08 15:29:56来源:51CTO阅读:4573作者:secondriver本文通过Android Studio创建一个Android Library项目,然后发布到本地的Maven仓库。1.创建Android Library模块2.配置build.gradleapplyplugin:'c...

weixin_29359515的博客 441
上一篇: Android HttpURLConnection源码分析
下一篇: ListView实现分析
CharonChui
博客等级 码龄12年 66粉丝 134原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值