# Gradle

## error: unmappable character for encoding MS950 gradle

參考資料:(<https://www.tonylin.idv.tw/dokuwiki/doku.php/java:gradle:build_jar>)

在 `build.gradle` 裡面，加上

```
compileJava {
    options.encoding = 'UTF-8'
}
```

## 如何強制 Gradle 重新下載項目的依賴庫

參考資料:(<https://blog.csdn.net/guyue35/article/details/84315090>)

* `gradle build --refresh-dependencies`

但是必須先 build 一次，如果目前 code 的狀態是 build 不過的，就不能使用此命令。

* 第二種方法

  刪除所有緩存

  `rm -rf ~/.gradle/caches/`

刪除特定包依賴 `find ~/.gradle -name '*org.spring*' | xargs rm -rf`

## 如何指定/傳入參數

```
-q task名稱
-D參數Key=Value //系統參數
-P參數Key=Value //屬性參數
```

## 如何載入本地的 jar 檔

參考資料:(<https://www.itread01.com/content/1545902649.html>)

### 載入單獨的jar包 <a href="#zai-ru-dan-du-de-jar-bao" id="zai-ru-dan-du-de-jar-bao"></a>

在專案底下新增`libs`目錄,將jar檔扔進`libs`目錄

`build.gradle`配置如下:

```
dependencies { compile files('lib/ojdbc-14.jar')}
```

### 載入某個目錄的jar包 <a href="#zai-ru-mou-ge-mu-lu-de-jar-bao" id="zai-ru-mou-ge-mu-lu-de-jar-bao"></a>

在自己的 Gradle 專案裡建立一個名為 `libs` （這個名字可以自己定義，不一定非要叫這個名字）的資料夾，把自己本地的 jar 檔複製到這個資料夾中。

`build.gradle`配置如下:

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

### 親身體驗

要變成下圖這樣放兩層才能吃到，不確定是不是我的設定有問題，在此分享一下，減少後人的時間

```
dependencies {
    dependencies {
        compile files('lib/example-0.0.1.jar')
    }
}
```
