hmJavaVM (Java Virtual Machine in 秀丸マクロ)
(2022/03/07現在、このコンポーネントは、Oracle Java9以降の有償・無償の迷走もあり、deprecated[非推奨]扱いとしています)
秀丸マクロと「Java Virutal Machine」をシームレスに結合するためのライブラリです。
秀丸マクロとJavaの連携
-
利用者が多いJava言語
「Windowsのデスクトップという分野」という限った視点だと、人気の無い「Java」ですが、
人気プログラミング言語別でみると、例年トップシェアを誇っています。
「業務アプリケーション」や「Androidアプリケーション」の分野を主軸に利用されていることもあり、
「Java言語はそれなりに知っている」という人が多いのも事実です。
-
秀丸マクロとJavaプラットフォームをシームレスに
そこで、秀丸マクロのほとんどをJavaで書きやすくしようというのが、このライブラリの目的となります。
秀丸マクロのシンボルや変数をJavaからシームレスに読み書きできるようにし、
Java側からも秀丸マクロの命令が実行可能となっています。
ダウンロード

for 秀丸エディタ 32bit版

for 秀丸エディタ 64bit版
動作環境
-
秀丸
秀丸エディタ ver8.73以上
-
秀丸エディタ 64bit版について
秀丸エディタ64bit版をご利用の方は、hmJavaVM_x64.zipをダウンロードし、hmJavaVM.dllを差し替えてください。
-
Java Platform 8系
-
OracleベースのJava8ならどこから入手してもOK
例えば、「Java Platform、Standard Edition 8」や、「Java SE Development Kit 8」など。
Oracle系から直接ダウンロードするものに限らず、EclipseやPleiadesに含まれているJDKでも、
それが「8系」であれば動作します。
-
ターゲットはJava8系のみ。Java9系以降は動作せず
現在Java Platform 9系以降では動作しません。
hmJavaVMだから特別に動作しない、といったことなのではなく、
Java8とJava9では、「.class」や.「jar」等、クラスファイル群の「遅延ロード周辺に関わるクラスの関係図」が変更されたためです。
(Jigsawといわれる仕組みがJava9で導入されたことによるクラス階層変更)又、そもそも論で、秀丸エディタの通常版は32bit(x86)ですが、Java9はそもそも32bit版が配布されていません。
-
JVMの入手場所
-
一番のおすすめは、開発環境ごとPleiadesを導入することです
詳細はEclipseの導入 となります。
「pleiades\java\8」以下のフォルダー(JDK1.8フォルダーに相当する)まるまるをコピーし、開発環境と秀丸の実行環境を分離してもOKです。
この方法は、hmJavaVMが利用するJavaを、「専用物として隔離」できるので、
「バージョンの更新」の影響を避けることが出来る点で結構お勧めです。
-
これ以外の実行環境の入手としては、Java8を、
http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.htmlにて、
Java8系の全てのリリースバージョンがダウンロード可能です。
(無料でその場で登録可能なオラクルのアカウントが必要です)
-
OpenJDKから、Java8を入手しても良いでしょう
https://www.openlogic.com/openjdk-downloadsにて、
「java 8 8u262-b10 Windows x86 32-bit JDK」がダウンロード可能です。
(秀丸の64bit editionを使っているなら、x64をダウンロードすること)
-
一番のおすすめは、開発環境ごとPleiadesを導入することです
-
-
秀丸エディタ ストアアプリ版について
hmJavaVMはストアアプリ版には対応していません。
hmJavaVMによく似たモジュールとして、「hmPy/hmRb/hmPS/hmJS/hmPython/hmPerl」があり、
これらはストアアプリ版でも動作しますので、そちらの利用をお勧めします。
インストール
- hmJavaVM.zipを解凍する。
-
「hmJavaVM.dll」「hmJavaVM.jar」「hmJavaVM.xml」を秀丸エディタのディレクトリ内(hidemaru.exeと同じ場所)へと
コピーする。
( 原則、hidemaru.exeと同じ場所においておく必要性があります。 )
hmJavaVM.xmlの編集
hmJavaVMを開いたら中身は単純なので、一瞬でわかると思いますが、
ここではhmJavaVMで利用する「jvm.dll」を指定します。
(※通常は「***jre\bin\client\jvm.dll」や「***jre\bin\server\jvm.dll」みたいなパターンのパスとなります)
オラクルが配布しているインストーラー経由のものに限らず、EClipseなどに含まれているjdk1.8(jdk8)やjre1.8(jre8)があるのであれば、そのパスを指定してもOKです。
「秀丸エディタ」が32bit版であれば、「hmJavaVM.dll」もx86版、パスも以下のようにx86版のjvm.dllを指定してください。
「秀丸エディタ」が64bit版であれば、「hmJavaVM.dll」もx64版、パスもx64版のjvm.dllを指定してください。
<?xml version="1.0" encoding="utf-8"?> <configuration> <appSettings> <add key="JavaVM_PATH" value="C:\Program Files (x86)\Java\jdk1.8.0_131\jre\bin\client\jvm.dll"/> </appSettings> </configuration>
ライセンス
-
hmJavaVM
hmJavaVMは、Apache License 2.0となります。
ソースの場所
- Githubにソースがあります。
- Githubにソースがあります。