日々精進

新しく学んだことを書き留めていきます

MacにインストールされたJDKを削除する

以下のコマンドで削除出来る。

sudo rm -rf /Library/Java/JavaVirtualMachines/jdk<version>.jdk
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -rf /Library/LaunchAgents/com.oracle.java.Java-Updater.plist
sudo rm -rf /Library/PrivilegedHelperTools/com.oracle.java.JavaUpdateHelper
sudo rm -rf /Library/LaunchDaemons/com.oracle.java.JavaUpdateHelper.plist
sudo rm -rf /Library/Preferences/com.oracle.java.Helper-Tool.plist

参考:

stackoverflow.com

TomcatにWarファイルをデプロイし、ブラウザからアクセスすると「Unsupported major.minor version 51.0」エラーが出る

原因はTomcatが使っているJVMのバージョンで実行出来るJavaのバージョンとコンパイル時に使ったJavaのバージョンが異なるため。 具体的にはコンパイル時はJDK1.8を使っていたがTomcatはJDK.7を使っていたためエラーが出た。 Unsupported major.minor version 52.0の52はJDK1.8のこと。51は1.7。 Tomcat上で動かせるJavaのバージョンはTomcatのバージョンではなく、Tomcatに設定されているJDKのバージョンで決まるので注意。

参考:

stackoverflow.com

tomcatが使用するJavaバージョンを変更する

元々JDK1.7を使っていたが、1.8に変更したくなった。 JDK1.8をインストールしただけでは変更されなかった。 JAVA_HOME環境変数をJDK1.8のパスに変更するとJavaバージョンが変わった。 例えば、以下のように設定する。 JAVA_HOME=%ProgramFiles%\Java\jdk1.8.0_111

参考:

メモリ不足の時の挙動を再現する方法

Testlimit.exeを使えば、メモリを任意の容量確保してくれるので 使用出来るメモリ量が少ないときの挙動を再現できる。

Testlimit.exeは以下からダウンロードできる。 Tools To Simulate CPU / Memory / Disk Load – The Way I See It

4GBのメモリを確保するには以下のコマンドを打つ。

Testlimit64.exe -d -c 4000

参考: http://rtaki.sakura.ne.jp/infra/?p=2273

promiseのthenの中からリクエストを送信し、レスポンスを後続のthenに渡す

promises/A+の仕様の中に、「thenの中でPromiseオブジェクトをreturnすると、そのPromiseオブジェクトのthenを実行し、その後元のpromiseの流れに戻る」という仕様があるので、 thenの中で以下のようにリクエストを送信してpromiseを返してやれば良い。

    this.httpService.get(url1).then(
      (response: any) => {
        return this.httpService.get(url2).then(...

参考: