[ 
https://issues.apache.org/jira/browse/CB-9704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16865553#comment-16865553
 ] 

Dario Telese edited comment on CB-9704 at 6/17/19 3:36 PM:
-----------------------------------------------------------

 
{code:java}
// code placeholder
{code}
Hello,

 

this solution is great!! 

Look:
  
[https://stackoverflow.com/questions/51934907/gradlew-change-jcenter-url-for-react-native-build]

 
 In .gradle Jenkins directory, create *init.gradle* file and insert this code:

 

 
{code:java}
apply plugin: EnterpriseRepositoryPlugin


class EnterpriseRepositoryPlugin implements Plugin<Gradle> {


private static String NEXUS_REPO = "https://mynexus/repository/mymavenrepo/";
private static String GOOGLE_REPOSITORY_URL = 
"https://dl.google.com/dl/android/maven2/";
private static String JCENTER_REPOSITORY_URL = "https://jcenter.bintray.com/";
private static String MAVEN_REPOSITORY_URL = 
"https://repo.maven.apache.org/maven2/";


void apply(Gradle gradle) {
// ONLY USE NEXUS REPO FOR DEPENDENCIES
gradle.allprojects { project ->
project.repositories {
// Remove all repositories not pointing to the NEXUS repository url
all { ArtifactRepository repo ->
if ((repo instanceof MavenArtifactRepository)){
if ((repo.url.toString() == GOOGLE_REPOSITORY_URL) || (repo.url.toString() == 
JCENTER_REPOSITORY_URL) || (repo.url.toString() == MAVEN_REPOSITORY_URL) ) {
project.logger.lifecycle "Repository ${repo.name} removed. Only NEXUS 
REPOSITORY is allowed"
remove repo
}
}
}
// add the NEXUS repository
maven {
name "NEXUS_REPO"
url NEXUS_REPO
}
}
}
}
}
{code}
 

Customize for your case and enjoy!!

Bye

 

 

 


was (Author: dario.telese):
Hello,

have you find a solution?

 

> Apache Cordova 5 does not support using a custom nexus repository for android 
> builds
> ------------------------------------------------------------------------------------
>
>                 Key: CB-9704
>                 URL: https://issues.apache.org/jira/browse/CB-9704
>             Project: Apache Cordova
>          Issue Type: New Feature
>          Components: Ionic
>            Reporter: Ajay Gupta
>            Priority: Major
>
> We are using AngularJS and Ionic for writing a mobile application supported 
> both on IOS and Android.  When we do "ionic build android --release", it 
> creates a build.gradle file in both platforms/android directory and 
> platforms/android/CordovaLib directory.  Both of these files point to 
> mavenCentral() as the repository which tries to download artifacts directly 
> from the maven central repo (http://repo1.maven.org/maven2).  We are trying 
> to build our mobile apps as part of a Jenkins build behind company proxy and 
> would like to have gradle reach out to our internal Maven nexus repository 
> instead of reaching out to the central maven repository directly.  Our 
> internal Neux repository would then proxy everything to the maven central 
> repository.  
> We cannot hand edit the build.gradle file as it is a generated file and so 
> any custom changes made to it would be lost in the next build.  Cordova 5 
> supports adding custom extensions using build-extras.gradle file but it does 
> not support overriding repositories.  
> As a workaround, we have defined a pre-build Cordova hook to search replace 
> mavenCentral() references to our local maven repository before doing an 
> android build.  It works but is a unnecessary workaround and not a very clean 
> solution.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to