質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

2回答

5525閲覧

VB.NET から Java画面の起動

plue

総合スコア71

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2015/11/18 05:10

VB.NET(.NET Framework4.5)で作成した画面から、Java(java7)で作成した画面(awt)を起動しようと考えております。
ネットで調べた結果「jni4net」を利用すると実現の可能性があることは分かったのですが、
VBからJavaの呼出しを行うサンプルが見当たらず、「jni4net」をどのように使えばよいのかが分かりません。
C#でもよいのですが、出来るならば使い慣れたVBを使いたいと思っております。
上記の方法をご存知の方がいらっしゃいましたら、ご教授お願い致します。

また「jni4net」の利用に限らず、VBからJavaの呼出しが可能な方法をご存知の方、
もしくは参考になりそうな情報をお持ちの方がいらっしゃいましたら、ご教授お願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Tak1wa

2015/11/18 05:13

Java画面の起動とは、 .NETからJavaクラスを扱うという意味ですか?それともJavaアプリケーションを起動するという意味ですか?
plue

2015/11/18 05:14

情報が足りず申し訳ありません。 .NETからJavaクラスを扱う意味です。
guest

回答2

0

自己解決

以下のサイトを参考に、解決することが出来ました。
http://stuff.stevenreid.uk/2015/07/02/invoke-java-from-c-using-jni4net-on-windows-x64/

手順は上記のサイトにあるとおりですが、自分で作成したサンプルを載せておきます。

java

1package jp.co.test; 2import java.awt.Frame; 3import java.awt.event.WindowEvent; 4import java.awt.event.WindowListener; 5 6/** 7 C#から呼び出される画面クラス 8/*/ 9public class JavaFrame extends Frame { 10 11 public static void frame(String args) { 12 13 JavaFrame f = new JavaFrame(); 14 f.setTitle(args); 15 f.setSize(500, 300); 16 f.setVisible(true); 17 } 18} 19

C#

1using System; 2using System.Collections.Generic; 3using System.Linq; 4using System.Text; 5using System.Threading.Tasks; 6using System.Windows; 7using System.Windows.Controls; 8using System.Windows.Data; 9using System.Windows.Documents; 10using System.Windows.Input; 11using System.Windows.Media; 12using System.Windows.Media.Imaging; 13using System.Windows.Navigation; 14using System.Windows.Shapes; 15using System.Diagnostics; 16 17using java.io; 18using java.lang; 19using java.util; 20using net.sf.jni4net; 21using net.sf.jni4net.adaptors; 22using jp.co.test; 23 24namespace CsherpJni4netTest 25{ 26 /// <summary> 27 /// MainWindow.xaml の相互作用ロジック 28 /// </summary> 29 public partial class MainWindow : Window 30 { 31 32 public MainWindow() 33 { 34 InitializeComponent(); 35 } 36 37// ボタンイベント 38 private void Button_Click(object sender, RoutedEventArgs e) 39 { 40 41 BridgeSetup bs = new BridgeSetup { Verbose = false }; 42 // JavaFrameクラスのjarの置き場を指定 43 bs.AddAllJarsClassPath(@"C:\pleiades\workspace\JavaFrame\proxygen"); 44 45 try 46 { 47 Bridge.CreateJVM(bs); 48 Bridge.RegisterAssembly(typeof(jp.co.test.JavaFrame).Assembly); 49 50 // staticメソッド起動 51 jp.co.test.JavaFrame.frame(new java.lang.String("java呼出し")); 52 53 // staticでないメソッド起動 54 var bridge = new jp.co.test.JavaFrame(); 55 // JavaFrameクラスに通常のメソッドは定義してないが、「bridge.メソッド名(引数)」で呼び出せる 56 } 57 catch (java.lang.Exception ex) 58 { 59 Debug.WriteLine(ex.Message); 60 Debug.WriteLine(""); 61 Debug.WriteLine(ex.Source); 62 Debug.WriteLine(""); 63 Debug.WriteLine(ex.StackTrace); 64 Debug.WriteLine(""); 65 Debug.WriteLine(ex.TargetSite); 66 Debug.WriteLine(""); 67 Debug.WriteLine(ex.ToString()); 68 } 69 } 70 } 71}

投稿2015/11/19 02:37

plue

総合スコア71

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

plue

2015/11/18 05:40

早速の回答ありがとうございます。 Process.Startも試してみたのですが、起動した後のjavaの画面オブジェクトの管理ができそうにないため、今回実現したい内容には少し足りないかなと思いました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問