GoogleのClosure Compiler Serviceの圧縮をコマンドラインから実行する

Googleの提供するJavaScriptの圧縮サービスClosure Compiler Serviceはコマンドラインから実行することができるようにjarファイルが提供されている。Getting Started with the Closure Compiler Applicationよりcompiler.jarをダウンロードし、適当なディレクトリにjarファイルを配置し下記のように実行する。

java -jar ./closure-compiler-v20180101.jar --compilation_level SIMPLE --js ./src/hoge.js --js_output_file ./build/hoge.js

各オプションなどの詳細はヘルプから確認可能

java -jar ./closure-compiler-v20180101.jar --help

追記: 圧縮後$jscompというコードが大量に含まれる場合の対応

ブラウザ上での実行は問題ないがコンソールから実行すると圧縮したコードに$jscomp=$jscompというコードが大量に含まれてしまうscriptが一部ありました。原因を調査したところPolyfillsのES6書き直しを停止することで解決しました。

実際の方法としては下記のように実行している場合

java -jar ./closure-compiler-v20180204.jar \
--compilation_level SIMPLE \
--js src.js \
--js_output_file out.js

オプションで下記のように停止することができます。

java -jar ./closure-compiler-v20180204.jar \
--compilation_level SIMPLE \
--rewrite_polyfills false \
--js src.js \
--js_output_file out.js

MacのFinderを再起動する

ターミナルで下記を実行するだけ

killall Finder

デスクトップディレクトリを消して、DropboxやGoogle Driveなどのディレクトリのデスクトップディレクトリ等にシンボリックリンクを貼ったりしてデスクトップのファイルをクラウドで同期するということはよくあると思うが、こういうことをした瞬間瞬時にデスクトップに反映されるわけではないので、一度Finderを再起動する必要があります。

Macのディスクユーティリティでパーティションマップを変更できませんでしたと出た時のディスクの初期化方法

パーティションマップを変更できませんでしたというメッセージが出てにっちもさっちも行かない状態になってしまった。コレ会社で貸してもらってるSSDなんだぞ壊してしまったのかえ。。

ディスクユーティリティではなくコマンドで行ったら初期化できた。まず下記コマンドでディスク一覧を出す。

diskutil list

次にhogehogeという名前で初期化する。

diskutil eraseDisk HFS+ hogehoge /dev/disk2

参考

http://degilog.jp/mac-hddformat/