Microsoft J++ の開発環境のレポートです。
Top Page へ
Contents
■ J++6.0 | |
■ Jvm | |
■ Jvm 未インストールによるエラー | |
■ 年表 | |
■ 対応 OS | |
■ Windows Vista へのインストール | |
■ リンク | |
Microsoft 社のJava 開発環境 J++1.1 では、Sun Microsystems 社などと、 統一仕様で構成されていたクラスライブラリを使用していたが、98年発売の J++6.0 より Windows OS でしか利用できないWFC (Windows Foundation Class)が 導入された。便利な半面、ユーザーの囲い込みとなることより、 "Once write, Run anywhere" でJava 環境を作成してきた Sun Microsystems 社と 裁判になった。Java裁判は和解に至ったが、その後のInternet Explorer の 独占的普及に対する裁判を通じて、Microsoft社は2004年9月で MS-JVM のサポートが認められなくなった。 既存のJava コードの C# 言語への移行、 JVM のアンインストール等の
措置を推奨している。MS-JVM のサポートは2007年12月31日に延長されたので、 次期OS Windows-Vista でも J#.Net の一部であるような既存の java アプリの上位OS互換は行われると思われるが、.Net Framework 環境での アプリ開発は C 言語系が良さそうである。 J++6.0 で追加された WFC はマルチメディア関連のクラスが多数含まれており、 Java1.2 搭載のSwing クラスより利用範囲は広いと考えられるが、 他のOSへの移植性は無く、プログラムの記述もWin32 API 的な難しさがある。
アプリケーションを開始できません。 -- Java 仮想マシンを
ロードできません。クラスが登録されていません。
前述のように、Microsoft社はJvmのサポート、配布を
終了しましたが、Windows用Jvmが無料で配布されています。
ダウンロードさせてもらいインストールしましょう。
Installations of Microsoft Virtual Machine ( WakuWaku さん )
ところでJvmに関するMSDNの資料を検討したところ、 Microsoft 社の Java系コンパイラと実行環境の関係は 次のように設計されていることがわかりました。 (MSDN: MSFTVM_Transition_Guide.pdf 他)(注)RL=ランタイムライブラリの略
J++ .Net Framework Java バイナリ J# バイナリ Jvm + wfc RL J# RL(ver1.1-2.0) .Net FrameWork RL(ver1.1-3.0)共通ランタイムライブラリ Win32 API J# → C# への移行がJava 実行環境に反映されています。 J#アプリがビルドしたマシン以外で動作するには、 ソースコードのパッケージ利用範囲、JDKの種類、実行マシンの Java 実行環境の組合せに十分注意をはらう必要がありそうです。
top
■ Java 年表年 Java MS-java 備考 2018 11.0 Open JDK 2014 Android Studio 1.0.0 2011 7.0 OracleJDK 2006 6.0 2006 5.0 beta (1.5) vj#.NET 2005 .NET Framework2.0 2003 vj#.NET 2003 .NET Framework1.1、IPv6 2002 1.4 vj#.NET 2002 (〜JDK1.1.4)、アプレット非対応 2001 Eclipse 1.0 2000 1.3 1998 1.2 (JAVA2) vj++6.0 WFC 1997 1.1 vj++1.1 1996 1.0 (MS SDK java40 -> 1.02) 1995 Oak -> Java , Microsoft とライセンス契約Java@wikipedia
top
■ J++6.0 の OS 対応 Windows OS 対応表 (Microsoft 社より転載 )top
■ Windows Vista へのインストール 前述の Windows OS 対応表では、Vista は非対応となっています。 今回、Vista マシンの購入に伴い Vista へのインストールに チャレンジしました。 OS 環境 Windows ME (DOS/V)--> Vista home premium (DOS/V) インストールメディア Microsoft Visual J++6.0 スタンダードエディション CD-ROM @ CD-ROM フォルダを開き、 Setup.exe を起動 "このプログラムは互換性の問題のためブロックされています。" のメッセージがでて失敗しました。 互換性が有りそうなので、旧マシンのJava関係フォルダを全て 新マシンにコピーして起動を確認しました。 ( common, VJ98, MSDN98 のフォルダがあります。) A 基本コマンドの動作試験 念のため、Common/Common/IDE/IDE98/Redist/MSJAVX86.EXE(MS-JVM) を インストール後に、VJ98/jvc.exe コマンドをDOS-Prompt より起動したら あっさり動きました。コンパイラとしては、OKです。 B フォームエディタの起動 統合開発環境が利用したいのですが、Common/Common/IDE/IDE98/DEVENV.EXE は 起動しません。 C コピーフォルダ内の再セットアップ機能 VJ98/Setup/1041/SETUP.EXE という再セットアップ用と思われる Setup.exe を 起動すると、インストールオプションがでてきます。再インストールを選択すると、 インストールメディアを F:ドライブから読み取ると指示があります。 F:ドライブはUSB機器用ですが、2GBの USB フラッシュメモリがたまたま ありましたので、J++6.0 の CD-ROM ファイルをこれに全てコピーして準備の後、 Setup.exe を起動すると、インストールは F: ドライブより読み取りを行い 続行されました。ちなみに失敗すると以下のメッセージがでます。 " Visual J++ 6.0 セットアップは正常に終了しませんでした。" D システムファイルのコピー インストールメーターが 99 % ほど進んだところで、次のシステム ファイルが登録できないのが理由でインストールが終了します。 C:\Windows\SYSTEM\msvbvm60.dll C:\Windows\SYSTEM32\COMCTL.SRG C:\Windows\SYSTEM32\MSCOMCTL.SRG C:\Windows\SYSTEM32\VSDBFLEX.SRG これらは旧マシンの system, system32 フォルダに有りましたので、 前もって新マシンの各フォルダにコピーの後、再度インストールに挑戦です。 最後に次のエラーが出ましたが、無視するとインストールが 成功か失敗か不明のまま終わりました。 ”F:\VJ98\Vtudio6.cab から Java パッケージを インストールできませんでした。アクセスを拒否されました。” ”F:\VJ98\wfcforms.cab から Java パッケージを インストールできませんでした。アクセスを拒否されました。” F 統合開発環境の動作テスト 前出の DEVENV.ENV をクリックすると、無事にGUI エディタが起動します。 アプリのウィンドウズカラーが薄いせいか、機能がフル利用できない 雰囲気が漂っていますがビルドも無事通り、ドキュメントフォルダ内の Visual Studio Projects フォルダ内に .exe ファイルが作成されていました。 結論として、CD-ROM から直接のインストールは拒否されますが、 インストール時に指示されるドライブに VJ++6.0 をフォルダコピーして、エラーの出た System ファイルの移植を丁寧に続けていけば、他の OS 環境でもどうにか動きそうです。top
■ リンク - MSDN Visual J# ホームページ
top
調査レポート作成 :tmlbworks (間違いもあるかもしれません...)![]()