星期二, 1月 20, 2015

第一個 Jenkins Plugin 完成

多年來第一份正式的 Java 開發工作,雖沒什麼功能,實驗性質濃厚,但打通關之後的事應該就簡單了。若不是選了難搞的 MsDeploy 當 Runtime.exec() 的對象,應該能順利很多。

星期三, 1月 14, 2015

Mac / Linux batch rename

我有一大堆像這樣的檔案:
  • DSCN9537_1.jpg
  • DSCN9538_2.jpg
  • ...
  • DSCN9636_100.jpg
想要把檔名改成:
  • DSCN9537.jpg
  • DSCN9538.jpg
  • ...
  • DSCN9636.jpg
在 Linux 或 Mac 的做法:

for file in *.jpg; do mv $file $(echo $file | rev | cut -d_ -f2 | rev).jpg; done

星期一, 1月 12, 2015

Jenkins log SEVERE

在區域網路內有 Mac 的情況下,Jenkins log 會有許多「嚴重」(SEVERE)錯誤,原因是 UDP 5353,它同時被用於
  • Jenkins -> JmDNS
  • [Mac] Home Sharing -> Multicast DNS
由後者發出的封包不符前者的規則,導致解析失敗,就這麼簡單!那要如何避免呢?設置以下的 Jenkins 參數
  • -Dhudson.DNSMultiCast.disabled=true

星期二, 1月 06, 2015

Jenkins + CssLint 三大問題

  1. 某些 .css 檔案在掃描後會導致建置失敗,但紀錄中未指出原因,而且掃描是正常完成的,報告也有產出。這些檔案應該有些共同特徵,但目前尚不清楚。
  2. 當一次掃描的 .css 總數過大時,也會有上述癥狀,但這「過大」的條件並不固定,似乎會隨當時資源的使用狀況浮動。
  3. 在上述問題發生時,在命令列視窗重複執行該指令,並不會有任何錯誤訊息,掃描可正常完成。這點使得找問題加倍困難。