안 드 로 이 드 넥 서 스 사복 사용
Nexus 는 Maven 의 창고 관 리 를 바탕 으로 하 는 지역 사회 프로젝트 입 니 다.주요 한 사용 장면 은 랜 에 Maven 사복 을 구축 하여 제3자 공공 구 조 를 배치 하거나 원 격 창고 로 서 이 랜 의 대리 로 사용 할 수 있 습 니 다.간단하게 몇 가지 예 를 들 면:
1.제3자 Jar 가방 은 nexus 에 놓 을 수 있 고 프로젝트 는 Url 과 경로 설정 을 통 해 직접 참조 할 수 있 습 니 다.통일 적 인 관 리 를 편리 하 게 할 수 있 습 니 다.
2.여러 프로젝트 가 개발 할 때 일부 공용 기초 모듈 은 nexus 에 따로 추출 할 수 있 고 필요 한 프로젝트 는 nexus 에서 직접 추출 하면 됩 니 다(기초 모듈 의 실현,유지 와 배 치 는 전문 인원 에 게 맡 길 수 있 습 니 다.다른 프로젝트 는 코드 실현 에 관심 을 가지 지 않 아 도 핵심 코드 가 누설 되 지 않도록 보장 할 수 있 습 니 다).
3.일부 폐쇄 적 인 개발 과정 에서 개발 기 는 공공 네트워크 에 접속 할 수 없 기 때문에 central reposcory 와 jar 를 연결 하 는 것 이 비교적 번 거 롭 습 니 다.이때 nexus 로 공공 네트워크 와 랜 사이 에 있 는 다 리 를 만 들 수 있 습 니 다.
다음은 넥 서 스 의 구축 과 안 드 로 이 드 프로젝트 에서 넥 서 스 를 사용 하 는 방식 을 간단하게 소개 합 니 다.
프로젝트 전시.png
라 이브 러 리 를 사복 으로 배포
functionbar 라 는 구성 요소 라 이브 러 리 를 예 로 들 어 보 겠 습 니 다.
nexus 계 정 정보 설정
Nexus 관련 매개 변 수 는 고정 되 어 있 기 때문에 창고 주소,사용자 이름과 비밀 번 호 를 포함 합 니 다.안전성 을 고려 하여 이 매개 변 수 를 gradle 의 Global 설정 에 기록 합 니 다.디 렉 터 리 는 C:\Users(사용자 이름),gradle\gradle.properties 입 니 다.
NEXUS_USERNAME=username
NEXUS_PASSWORD=password
NEXUS_REPOSITORY_URL=http://xxx/nexus/repository/maven-releases/
pom 파라미터 설정프로젝트 루트 디 렉 터 리 의 gradle.properties 에 다음 pom 인 자 를 추가 합 니 다.
//
POM_NAME=functionbar
//
POM_VERSION=1.0.1
//
POM_ARTIFACTID=utils
// id
POM_GROUPID=com.app
//
POM_PACKAGING=aar
gradle 스 크 립 트 도입library 의 build.gradle 파일 끝 에 다음 과 같은 인용 을 추가 합 니 다.물론 이 파일 은 프로젝트 루트 경 로 를 만들어 야 합 니 다.원본 코드 는 스 크 립 트 판독 에 있 습 니 다.
apply from: '../nexus_upload.gradle'
이 넥 서 스upload.gradle 스 크 립 트 는 자바-source 와 자바-doc 를 생 성 하 는 것 을 포함 하고 있 습 니 다.주석 이 완전 하지 않 으 면 스 크 립 트 에 있 는 안 드 로 이 드 자바 docsJar 호출 을 주석 하여 업로드 에 영향 을 주지 않도록 할 수 있 습 니 다.발표 하 다.
오른쪽 gradle task 의 uploadArchives 를 더 블 클릭 하여 library 를 컴 파일 하고 업로드 합 니 다.
up.png
잠시 후 Success 메시지 가 나타 나 면 업로드 성공 을 증명 합 니 다.
success.png
마지막 으로 넥 서 스에 가서 확인 해 보 겠 습 니 다.빙고!업로드 성공.
스 크 립 트 해독
// maven
apply plugin: 'maven'
task androidJavadocs(type: Javadoc) {
options.encoding = "utf-8"
source = android.sourceSets.main.java.srcDirs
classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
}
task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) {
classifier = 'javadoc'
from androidJavadocs.destinationDir
}
task androidSourcesJar(type: Jar) {
classifier = 'sources'
from android.sourceSets.main.java.srcDirs
}
artifacts {
archives androidSourcesJar
// javadoc ,
archives androidJavadocsJar
}
uploadArchives {
repositories {
mavenDeployer {
//
repository(url: NEXUS_REPOSITORY_URL) {
//
authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD)
}
//pom
pom.project {
name POM_NAME
version POM_VERSION
artifactId POM_ARTIFACTID
groupId POM_GROUPID
packaging POM_PACKAGING
}
}
}
}
사복 에 있 는 라 이브 러 리 사용 하기우선,프로젝트 의 build.gradle 에서 사복 의 주 소 를 밝 혀 야 합 니 다.
allprojects {
repositories {
jcenter()
mavenCentral()
maven { url NEXUS_REPOSITORY_URL}
}
}
그 다음 에 우리 가 가장 잘 아 는 module 의 build.gradle 파일 에 의존 을 추가 하 는 것 입 니 다.groupId 뒤 에는 의존 라 이브 러 리 이름 뒤에'버 전 번호'를 추가 하려 면 groupId 뒤에 쓰 는 오 류 를 범 한 적 이 있 습 니 다.
compile 'com.app:functionbar:1.0.1
개인 서버 에 Plugin(플러그 인)발표발표 절 차 는 library 와 같은 것 입 니 다.조금 만 언급 해 야 합 니 다.스 크 립 트 정 보 는 삭제 해 야 합 니 다.다음 과 같은 것 만 사용 해 야 합 니 다.
apply plugin: 'maven'
uploadArchives {
repositories {
mavenDeployer {
//
repository(url: NEXUS_REPOSITORY_URL) {
//
authentication(userName: NEXUS_USERNAME, password: NEXUS_PASSWORD)
}
//pom
pom.project {
name POM_NAME
version POM_VERSION
artifactId POM_ARTIFACTID
groupId POM_GROUPID
packaging POM_PACKAGING
}
}
}
}
사복 의 Plugin 사용 하기우선,프로젝트 의 build.gradle 에 classpath 인용 을 설정 하려 면 전형 적 인 작은 칼 로 예 를 들 어 보 세 요.
buildscript {
repositories {
jcenter()
maven { url NEXUS_REPOSITORY_URL}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0'
classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1'
...
}
}
그리고 module 에서 build.gradle 에서 플러그 인 plugin 을 참조 합 니 다.
apply plugin: 'com.android.application'
apply plugin: 'com.jakewharton.butterknife'
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Kotlin의 기초 - 2부지난 글에서는 Kotlin이 무엇인지, Kotlin의 특징, Kotlin에서 변수 및 데이터 유형을 선언하는 방법과 같은 Kotlin의 기본 개념에 대해 배웠습니다. 유형 변환은 데이터 변수의 한 유형을 다른 데이터...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.