23日目 Remote Hostプラグイン

これまた地味な Remote Hostプラグインについてです。Javaで開発しているとあまり用事はないのですが,スクリプト系の作業しているとしばしば活躍します。どんなことしてくれるかというと,いわゆるアップローダです。プロジェクト配下のディレクトリとサーバのディレクトリを指定して,ファイル個別でアップロード・ダウンロードをしたり,同期をとったりします。そんなの外部ツール使えば済む話なんですが,IntelliJで完結するのに意味があると。:-)


設定は,File->Settings->Deploymentで行います。


「+」ボタンを押してサーバを登録します。登録可能なプロトコルは以下の4種類(と言っても最後の"In place"がナニモノなのかよくわかりませんが...。

  • FTP
  • SFTP
  • Local or mounted folder
  • In place


面白いのが"Local or mounted folder",つまりファイルのコピーをするだけなんですが,プロジェクトの場所とWebサーバの公開ディレクトリが異なっているとか,または全く他の理由でコピーだけしたい,なんて時にいちいちスクリプトを書かなくともIntelliJだけで作業が完結します。


ここで設定したサーバは,Remote Hostウィンドウに表示されます。設定画面の "Mappings" タブにある "Local path" と "Deployment path on server" を設定しておくと,サーバ上のファイルをダウンロードしたり,同期したりできるようになります("Deployment path on server"外のファイルは同期の対象外になりますが,リネームなどの操作はできるようです。


ローカルのファイルをアップロードする方法は,いくつかあります。

などです。


Tools->Deployment->Automatic Uploadを有効にすると,ファイルを保存するたび,更新のあったファイルを自動でアップロードします。「自動アップロードはイヤだけど,毎回メニューを選ぶのも面倒だ」という場合は,File->Settings->Keymapで,Main menu->Tools->Deploymentの "Upload to Default Server"か"Upload to..."のどちらか(または両方)にお好きなショートカットキーを登録すると良いでしょう。


あと面白い機能として,"Sync With Local..."などの同期コマンド*1を実行すると,即時で同期を開始するのではなく,下図のような比較ウィンドウが表示され,違いがあればサーバ or ローカルのどちらを優先するかをひとつひとつ指定することができます。


更新さえしなければ,単純にサーバとローカルの構成比較に使えるので,意外なときに重宝してます。

*1:Remote HostウィンドウやTools->Deploymentにある。

おまけ:ライセンスのこととか

JetBrainsの終末セールのおかげでJetBrainsのライセンスまわりがくわしくなったのでまとめておきます。一番詳しいのはイケメンさんのスライドなので、まずはそちらを...。
http://samuraism.jp/diary/2012/12/21/1356054600000.html


まとめると、

  • IntelliJのPersonal Licenseは自己資金で買うこと
  • Personal LicenseもCommercial Licenseも商用利用可(AcademicやClassroom、OSS Licenseはダメ。
  • ライセンスはメジャーバージョンごとに割り当てられる
    • つまり、IDEA11のライセンスはIDEA11でしかつかえない
    • アップグレードするときは古いライセンスキーを申請して新しいライセンスキーをもらう
  • 同じライセンスを異なるプラットフォームにインストールしても大丈夫
    • 同じライセンスをWindowsMacLinux、それぞれに使える
    • ただし、同一ネットワーク上で同時起動するとダメ言われる
  • ライセンスを購入すると、決済通知は element5 から届き、ライセンスキーそのものは JetBrains から届く
    • 大抵、element5からの通知は早くくるけど、JetBrainsからのライセンスは1日くらいかかる
  • IntelliJ系はIntelliJ以外(WebStorm, PhpStorm, RubyMine, PyCharm)はライセンス購入から1年間は無償アップグレード権を持つ
  • なんかあったらサポート(sales@jetbrains.com)にメールする
    • カタコト英語でも要点だけおさえとけば案外通じる


IntelliJLicense Comparison Matrixにちゃんと「Purpose of use → General commercial」って書いてる。


たとえば、AppCodeの購入ページには"AppCode license is permanent and includes one year of free product upgrades since the purchase date, including even major version upgrades."と書いてある。


IntelliJの買い時や他のIDEとの関係は過去にも書いてるけど、まあ多くは言うまい...。(´・ω・`)
02日目 IntelliJと仲間たち
03日目 IntelliJの購入方法


ps.
終末セールの個人的な感想。:-)


その2。安さは正義だなw