2015-12-07 4 views
1

Я делаю программу Java, которая переключает между двумя jar с помощьюДоступ к переменным из другой программы Java

Runtime.getRuntime().exec("cmd /c java -jar fileTwo.jar"); 

Но мне нужен class один из jar каким-то образом транспортировать string значения в нем к class в другой jar. Поскольку два класса относятся к различным файлам jar, я не могу найти методы, которые могут переносить string между двумя каталогами jar.

Если это помогает, я создаю программу, которая позволяет создавать и получать доступ к учетным записям. Вот почему мне нужно перевезти strings, поэтому я могу хранить их в dataclass для использования в качестве ссылки для более поздних логинов. Я должен использовать string, потому что char не может быть присвоено значение, полученное из метода jtfFirst.getText();, который является JTextField.

+1

Если вам нужно, чтобы это было двунаправленным, используйте [сокеты] (https://docs.oracle.com/javase/tutorial/networking/sockets/). – Sarvadi

ответ

1

Позвольте одной программе записать строку в файл, а другую - прочитать из файла. Вы также можете передать строку в качестве параметра командной строки для второй программы. Скажем, s - это переменная со строкой. Затем вы можете выполнить команду "cmd /c java -jar fileTwo.jar \""+s+"\"". (Вставьте строку в кавычки, если она состоит из нескольких слов). Строка будет доступна для второй программы как args[1].

+0

Вы можете передать его как массив строк. В случае нескольких аргументов String. – praveen

+0

Мне это нравится! Это отлично работало = D –

2

В банке у вас есть файл манифеста? Если он присутствует, а не экспортирует пакет, из которого нужно переносить значения строки «s», и импортируйте этот пакет в файл манифеста jar, где вам нужно использовать значение этой строки «s». Все редактирование будет выполнено в файле манифеста. Пример: Для экспорта пакета используйте это: Export-Package: PackageFullPath Для импорта этого пакета используйте это: Import-Package: путь к пакету, используемый при экспорте.

Смежные вопросы