动态

详情 返回 返回

DevEco Studio創建Java項目,gradle報sync failed:connection reset錯誤 - 动态 详情

使用DevEco Studio 3.1.1版本,創建Java應用,程序報錯,無法運行。

image.png

image.png

image.png

原因:

DevEco Studio新建的Java應用默認的gradle配置指向的是https://repo.huaweicloud.com,而你的網絡因為各種原因(比如公司網絡),無法訪問,所以會報錯。

解決方法

1.設置代理

  1. 打開File > Settings > Appearance & Behavior > System Settings > HTTP Proxy配置界面。
  2. 勾選Manual proxy configuration,設置DevEco Studio的HTTP Proxy。

HTTP配置項,設置代理服務器信息。如果不清楚代理服務器信息,可以諮詢你們的網絡管理人員。

Host name:代理服務器主機名或IP地址。
Port number:代理服務器對應的端口號。
No proxy for:不需要通過代理服務器訪問的URL或者IP地址(地址之間用英文逗號分隔)。

Proxy authentication配置項,如果代理服務器需要通過認證鑑權才能訪問,則需要設置。否則,請跳過該配置項。

Login:訪問代理服務器的用户名。
Password:訪問代理服務器的密碼。
Remember:勾選,記住密碼。

圖片

配置完成後,點擊Check connection,輸入網絡地址(https://repo.huaweicloud.com),檢查網絡連通性。提示“Connection successful”表示代理設置成功。然後點擊OK按鈕完成配置。

2.項目修改配置信息

  1. 打開${Java應用目錄}/gradle/wrapper/gradle-wrapper.properties,可以知道項目在獲取不到gradle的時候會去https\://repo.huaweicloud.com/gradle/gradle-7.3-bin.zip 下載

image.png

  1. 在https://gradle.org/releases/ 官網下下載對應的gradle-7.3-bin文件

image.png

  1. 將該文件放於 C:\Users\${你電腦用户名}.gradle
  2. 修改gradle-wrapper.properties的distributionUrl

image.png

  1. 修改build.gradle配置文件,(由於我可以訪問https://maven.aliyun.com/repository/public,所以配置成這個地址,你根據實際情況配置maven倉庫地址,可以是公司的私有庫,但是可能存在有些包找不到的情況,這種情況下就缺哪個包你就導入哪個包到公司私有庫即可)

image.png

  1. 點擊file->Sync and Refresh Project 等待下載即可

image.png

  1. 成功

image.png

image.png

3.項目修改默認配置

使用2方法的話每次新建項目都得修改,太麻煩了,可以通過修改DevEco Studio模板的方式進行統一配置

  1. 修改gradle-wrapper.properties文件,它位於 ${Dev Eco Studio下安裝目錄}\plugins\harmony\lib\templates\project\New Project\code template\gradle\wrapper
# default config
#distributionBase=GRADLE_USER_HOME
#distributionPath=wrapper/dists
#distributionUrl=https\://repo.huaweicloud.com/gradle/gradle-7.3-bin.zip
#zipStoreBase=GRADLE_USER_HOME
#zipStorePath=wrapper/dists

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=file:///C:/Users/${你電腦用户名}/.gradle/gradle-7.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
  1. 修改build.gradle.ftl文件,它位於 ${Dev Eco Studio下安裝目錄}\plugins\harmony\lib\templates\project\New Project\code template\
// Top-level build file where you can add configuration options common to all sub-projects/modules.
apply plugin: 'com.huawei.ohos.app'

//For instructions on signature configuration, see ${signConfigHelpUrl}
ohos {
    compileSdkVersion ${compileSdkVersion}
<#if isSupportSystemStandard>
    supportSystem "standard"
</#if>
}
    
/* default config
buildscript {
    repositories {
    <#if configMavenUrl1?? && configMavenUrl1 != "">
        maven {
            url '${configMavenUrl1}'
        <#if configMavenUrl1?contains("http://")>
            allowInsecureProtocol = true
        </#if>
        }
    </#if>
    <#if configMavenUrl2?? && configMavenUrl2 != "">
        maven {
            url '${configMavenUrl2}'
        <#if configMavenUrl2?contains("http://")>
            allowInsecureProtocol = true
        </#if>
        }
    </#if>
    <#if configMavenUrl3?? && configMavenUrl3 != "">
        maven {
            url '${configMavenUrl3}'
        <#if configMavenUrl3?contains("http://")>
            allowInsecureProtocol = true
        </#if>
        }
    </#if>
    }
    dependencies {
        classpath 'com.huawei.ohos:hap:${configHapVersion}'
        classpath 'com.huawei.ohos:decctest:${configDecctestVersion}'
    }
}

allprojects {
    repositories {
    <#if configMavenUrl1?? && configMavenUrl1 != "">
        maven {
            url '${configMavenUrl1}'
        <#if configMavenUrl1?contains("http://")>
            allowInsecureProtocol = true
        </#if>
        }
    </#if>
    <#if configMavenUrl2?? && configMavenUrl2 != "">
        maven {
            url '${configMavenUrl2}'
        <#if configMavenUrl2?contains("http://")>
            allowInsecureProtocol = true
        </#if>
        }
    </#if>
    <#if configMavenUrl3?? && configMavenUrl3 != "">
        maven {
            url '${configMavenUrl3}'
        <#if configMavenUrl3?contains("http://")>
            allowInsecureProtocol = true
        </#if>
        }
    </#if>
    }
}
*/

buildscript {
    repositories {
        maven {
            url 'https://maven.aliyun.com/repository/public'
        }
        maven {
            url 'https://developer.huawei.com/repo/'
        }
    }
    dependencies {
        classpath 'com.huawei.ohos:hap:3.1.5.0'
        classpath 'com.huawei.ohos:decctest:1.2.7.20'
    }
}

allprojects {
    repositories {
        maven {
            url 'https://maven.aliyun.com/repository/public'
        }
        maven {
            url 'https://developer.huawei.com/repo/'
        }
    }
}
  1. File-> Invalid Caches... 進行清理緩存並重啓,讓模板生效

image.png

  1. happy coding

其他

修改gradle包下載地址

在使用File->New Projects Setup->Settings for New Project...->Build,Execution,Deployment->Build Tools->Gradle->Gradle user home修改gradle包下載地址的時候,發現新建的項目依然還是C:/Users/${你電腦用户名}/.gradle

image.png

解決方法:配置環境變量

image.png

user avatar sherlocked93 头像 haoqidewukong 头像 zaotalk 头像 xiaoxxuejishu 头像 xiao2 头像 autohometech 头像 junxiudetuoba 头像 fannaodeliushu 头像 infinilabs 头像 reddish 头像 defghy 头像 huaweiyun 头像
点赞 17 用户, 点赞了这篇动态!
点赞

Add a new 评论

Some HTML is okay.