Более-менее сложная программа на java состоит из множества jar-файлов. Ещё иногда в ней бывает несколько Main-классов и она требует задания переменных через -D.
В принципе можно писать .sh и .bat/.cmd файлы. Проблема очевидна, их надо синхронизировать между собой.
Можно написать относительно универсальный .sh файл, который будет сканировать каталог lib при запуске, создавать CLASSPATH и запускать. Создать на вендовом недоязыке bat-файлов аналог я лично не осилил. А кроссплатформенность нужна.
Хотелось бы следующего: пишем конфиг примерно такого вида:
cp1 dist/program.jar
cpjars lib
def my.host = 127.0.0.1
main com.company.project.Main
и запускаем программку. Она делает нужный classpath (т.е. в котором будет dist/program.jar и все jar-ки каталога lib) и запускает java-у.
В принципе такая программа пишется на перле за 10 минут, но проблема остаётся. На венде перла нет. Если ставить, то проще сразу bash юзать.
В идеале это должна быть маленькая программа на сях, ни от чего не зависящая, и делающая то, что я описал.
Ещё, кстати, классно было бы иметь профили, т.е. возможность гибко менять конфигурацию. Что то вроде
[test]
def my.host = test.lan
[production]
def my.host = production.lan