У меня сложный вопрос, для которого я сначала нарисую фон, чтобы сделать вещи более понятными.Как разрешить только один случай .Jar, и позволить ему использовать Args из других попыток?
фон
Я сделал аудиоплеер в Java, которая может быть запущена с командной строкой аргументами, а также без них. Приложение .jar приложения (сделанное с Netbeans) завернуто в файл .exe (сделанный с Launch4j), так что вы можете открыть, например, mp3-файл с .exe, а затем .jar внутри принимает путь к файлу в его строке [] арг.
Проблема с этим подходом (на данный момент) заключается в том, что если вы одновременно выбираете несколько mp3-файлов и открываете их одновременно, все они открываются в отдельных окнах аудиоплеера. Однако я хочу, чтобы все файлы открывались в одном экземпляре приложения.
То, что я тогда попытался, - позволить Launch4j разрешить только один экземпляр .jar/.exe в надежде, что все выбранные файлы будут открыты в одном приложении, это не помогло.
Что я вижу, как решение
Так что я хочу, чтобы иметь возможность выбрать несколько файлов .mp3 в окнах, и что все их Путь к файлам передаются дальше, как аргумент командной строки для одного экземпляра заявление. Или другой подход, имеющий тот же результат. Кто-нибудь знает, как реализовать это в реальном приложении?
Большое спасибо заранее. Я попытаюсь продолжить поиск потенциальных решений и идей.
- редактирует -
Основной метод готов к приему нескольких файлов. Я выполнил кусок кода, который сохраняет все аргументы командной строки приложения в файл .txt, и когда я разрешаю только один экземпляр с файлом Launch4j .exe, в текстовом файле появляется только один аргумент. когда я пытаюсь открыть несколько mp3-файлов.
Если я разрешаю .exe иметь несколько экземпляров, то я просто запускаю приложение .jar несколько раз (один раз для каждого файла, который я пытаюсь открыть).
Ваш метод 'main' готов для получения нескольких путей к файлу в качестве аргументов? – Berger
@Berger Да, main готов принимать несколько путей к файлу в качестве аргументов. Я сделал тестовый файл, чтобы узнать, что такое аргументы, и каждый раз только один путь к файлу показан как аргумент. – ImJustACowLol
Используйте Socket ... – MadProgrammer