Cómo crear un instalador utilizando Java que combinan Tomcat, MySQL y archivo de la guerra y salir un EXE final?Cómo crear instalador de Java webapp (.exe) que incluye Tomcat y MySQL?"
Respuesta
Puede usar cualquier instalador, realmente. Personalmente he usado InnoSetup, que es bastante simple, pero aún puedo realizar casi cualquier tarea en el momento de la instalación.
En su caso, es probable que desee colocar los archivos de Tomcat en algún lugar, incluida la aplicación web. Personalice algunos archivos de configuración y ejecute el instalador de MySQL en modo silencioso. Todo lo cual es perfectamente posible con InnoSetup.
Si necesita más flexibilidad, puede consultar NSIS, otra aplicación de instalación muy simple pero muy potente.
Gracias por su recomendación ... InnoSetup es bueno y fácil de usar. – Wilson
Alguien publicó una pregunta de seguimiento sobre cómo hacer esto con la instalación de Inno: http://stackoverflow.com/questions/938925/how-to-use-inno-setup-to-create-an-installer-for-installing -the-tomcat-mysql-we – Jonik
El enlace de Jonik está muerto – rogerdpack
Yo sugeriría, que utilizas Java para esto, un installer.jar. Como quieras ejecutar tomcat de todos modos, no hay necesidad de poner un archivo exe. Hemos hecho algo similar, programando un instalador jar con la ayuda de Ant API (ant programación)
Puede darnos un poco más de información sobre esto, me gustaría saber más sobre él y cómo se hace. –
Descargue el jar Ant del sitio web Apache y juegue un poco con la API. En lugar de utilizar quizás el comando XML
oh, ya veo lo que quieres decir. entonces, ¿lo instala cuando compila en lugar de implementar una instalación en una máquina cliente/servidor? –
Las posibles opciones se han cubierto en gran medida en varias cuestiones ya, especialmente:.
- What’s the best way to distribute Java applications?
- What is the best installation tool for java?
- What are good InstallAnywhere replacements for installing a Java EE application?
... y otras preguntas tagged java + installer
aunque es cierto que algunas de las opciones mencionadas en dichas cuestiones no pueden producir instaladores .exe autosuficientes. Si una herramienta comercial está bien para usted, personalmente puedo recomendar install4j (costos $); entre otras cosas, puede crear instaladores .exe (details about my experiences with it). O bien, para obtener una herramienta más simple y gratuita para producir ejecutables de Windows a partir de programas Java, consulte Launch4j.
actualización de mi recomendación install4j, en base a este comentario por OP:
Sí, el instalador exe necesidad de instalar el guión Tomcat, MySQL, aplicaciones web, y db todo en una sola vez. Al final, los usuarios solo necesitan iniciar el servicio mysql de tomcat y . Ir al navegador puede acceder a la aplicación web.
Con install4j,
- puede agrupar Tomcat, MySQL y su aplicación web muy bien
- puede comenzar automáticamente a los servicios también desde el instalador (o dejar que los usuarios como usted sugiere)
- si lo desea, el instalador puede incluso iniciar directamente el navegador y el punto a su aplicación web :-)
acabo de hacer tan Algo similar ocurre con install4j (paquete de servidor de aplicaciones, aplicación web, ejecutar scripts de bases de datos y muchas otras cosas; sin empaquetar la base de datos, sin embargo), así que estoy relativamente seguro de que se puede hacer. No sé si puedes hacer esto (fácilmente) con las herramientas gratuitas como Launch4j.
-1 Esto no está cubierto en ninguna de las anteriores. Él está hablando claramente de la instalación de tomcat y mysql con una GUERRA no una aplicación java sino una aplicación web java. –
Bueno, se ha cubierto en cierta medida, ya que, por ejemplo, con install4j puede incluir archivos Tomcat, MySQL, WAR o lo que desee. – Jonik
Quiero decir, si estamos hablando de crear instaladores .exe para el software Java, las herramientas posibles serán las mismas de todos modos, sin importar si se trata de una aplicación web o no. – Jonik
Puede usar BitRock InstallBuilder para ello (cuesta $). Para ejemplos de tales programas, consulte los instaladores de aplicaciones Alfresco, Liferay, etc. que incluyen Tomcat, MySQL, etc. en BitNami
Aquí está mi solución minimalista a este problema. He descargado las instalaciones de Tomcat y MySQL sin el instalador, así que simplemente las descomprimí, y las intenté funcionan bien. En este momento instalarás el archivo war para tomcat y el esquema relevante para mysql. Entonces cuando copias las carpetas, todo se copia. Y puedes probar cómo funciona. Probablemente pueda hacer algunos ajustes en ellos, pero para mí funcionan muy bien desde el primer momento, ya que mi aplicación no es tan exigente. Aparte de eso, he descargado versiones de programas de 32 y 64 bits para que ambos puedan ser instalados. Utilicé la configuración de Inno para empaquetar el instalador. Básicamente, solo copia las dos carpetas eligiendo la arquitectura 32 o 64, e instala ambas, tomcat y mysql, como servicio de Windows.
[Setup]
AppName=MyApp
AppVersion=1.0
DefaultDirName={pf}\MyApp
DefaultGroupName=MyApp
Compression=lzma2
SolidCompression=yes
OutputDir=output
; "ArchitecturesInstallIn64BitMode=x64" requests that the install be
; done in "64-bit mode" on x64, meaning it should use the native
; 64-bit Program Files directory and the 64-bit view of the registry.
; On all other architectures it will install in "32-bit mode".
ArchitecturesInstallIn64BitMode=x64
; Note: We don't set ProcessorsAllowed because we want this
; installation to run on all architectures (including Itanium,
; since it's capable of running 32-bit code too).
[Files]
; Install x64 if running in 64-bit mode (x64; see above), x86.exe otherwise.
Source: "mysql-5.5.13-winx64\*.*"; DestDir: "{app}\mysql"; Check: Is64BitInstallMode; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "mysql-5.5.13-win32\*.*"; DestDir: "{app}\mysql"; Check: not Is64BitInstallMode; Flags: ignoreversion recursesubdirs createallsubdirs
; Install x64 if running in 64-bit mode (x64; see above), x86.exe otherwise.
Source: "apache-tomcat-6.0.32-x64\*.*"; DestDir: "{app}\tomcat"; Check: Is64BitInstallMode; Flags: ignoreversion recursesubdirs createallsubdirs
Source: "apache-tomcat-6.0.32-x86\*.*"; DestDir: "{app}\tomcat"; Check: not Is64BitInstallMode; Flags: ignoreversion recursesubdirs createallsubdirs
;
Source: "start.bat"; DestDir: "{app}"; DestName: "start.bat";
Source: "stop.bat"; DestDir: "{app}"; DestName: "stop.bat";
[Icons]
Name: "{group}\Start MyApp"; Filename: "{app}\start.bat"
Name: "{group}\Stop MyApp"; Filename: "{app}\stop.bat"
[Run]
; install mysql and tomcat as services
Filename: "{app}\mysql\bin\mysqld.exe"; Parameters: "--install MyApp_MySQL"
Filename: "{app}\tomcat\bin\service.bat"; Parameters: "install"
Filename: "{app}\start.bat"; Description: {cm:LaunchProgram,{cm:AppName}}; Flags: nowait postinstall skipifsilent
[UninstallRun]
; uninstall mysql and tomcat as services
Filename: "{app}\stop.bat";
Filename: "{app}\mysql\bin\mysqld.exe"; Parameters: "--remove MyApp_MySQL"
Filename: "set"; Parameters: "CATALINA_HOME={app}\tomcat"
Filename: "{app}\tomcat\bin\tomcat6.exe"; Parameters: "//DS//MyApp_Tomcat"
[CustomMessages]
AppName=MyApp
LaunchProgram=Start MyApp after finishing installation
Para ejecutar su aplicación ahora, todo lo que necesita es iniciar/detener los servicios registrados. start.bat
NET START MyApp_MySQL
NET START MyApp_Tomcat
START "" "http://localhost:8080/myapp/"
stop.bat
NET STOP MyApp_MySQL
NET STOP MyApp_Tomcat
Para mí funciona bien.
- Tal vez usted puede incluir la instalación de JRE así, causar algunos composiciones podrían no tenerlo.
- Además, si alguien sabe cómo inspeccionar si Tomcat y MySQL puertos ya están tomadas, y cómo cambian en archivo de configuración, por favor nos dicen.
- También si puede inspeccionar la dirección IP y escribirla en lugar de localhost que sería genial.
Saludos
Amir
Una mejor manera es utilizar IzPack, es mejor que otros porque, sólo se necesita para ser empaquetado de una vez y se puede utilizar en cualquier sistema operativo con la misma compilado tarro.
Personalmente lo utilicé para empaquetar tomcat, mysql y algunos otros requisitos previos para mi aplicación web.
Usé Launch4J para crear ejecutable (.exe) desde el archivo jar generado por IzPack.
- 1. Tomcat por configuración de memoria de webapp
- 2. Crear Instalador para Netbeans (JAVA) Proyecto
- 3. ¿Cómo implementar webapp externo en tomcat?
- 4. Tomcat bloquea durante el inicio webapp
- 5. cómo crear el instalador dentro de otro instalador?
- 6. Cómo crear un archivo exe en java
- 7. TeamCity - ¿Cómo crear un paquete de instalador?
- 8. ¿Cómo crear el instalador una vez finalizado con Java Desktop Application con MySQL DB?
- 9. .NET 2.0 incluye en .NET 3.5 instalador?
- 10. ¿El instalador .NET 3.5 incluye 3.0 SP2?
- 11. webapp de reinicio tomcat desde la línea de comandos
- 12. Cómo crear el instalador de Windows para el proyecto pyqt
- 13. Desplegar webapp en el servidor remoto de tomcat de netbeans
- 14. Necesito saber el puerto HTTP y HTTPS que está ejecutando mi aplicación web java webapp startup
- 15. Cómo crear una condición de instalador que pruebe para Windows de 32 y 64 bit
- 16. ¿Cómo crear un instalador MSI programáticamente?
- 17. Versión Exe en nombre de archivo instalador MSI (VS 2010)
- 18. Crear carbón de char * que incluye el carácter de escape
- 19. Instalador de aplicaciones Java para Linux
- 20. NSIS - poner versión EXE en nombre del instalador
- 21. Instalador para la aplicación Java
- 22. ¿Cómo crear un archivo .exe en netbeans?
- 23. Cómo utilizar el grupo de conexiones con Java, MySQL y Tomcat 6
- 24. Crear base de datos MySQL desde Java
- 25. Java incluye Javadoc privadas
- 26. Multiple login-config para Java webapp
- 27. javascript webapp development
- 28. ¿Cómo puedo extraer Java exe en jar
- 29. Crear un instalador para la aplicación Linux
- 30. ¿Cómo obtengo el Directorio de trabajo actual para Grails/Tomcat Webapp?
¿Crees que podrías ser un poco más específico, quieres que el exe instale tomcat y mysql en el sistema o quieres que sea un exe que ejecutará tanto a tomcat como a mysql como daemons o algo así? –
Sí, el instalador exe necesita instalar el script tomcat, mysql, aplicación web y db todo de una vez. Al final, los usuarios solo necesitan iniciar el servicio de tomcat y mysql. Ir al navegador puede acceder a la aplicación web. – Wilson
¿Alguien puede editar el título de la pregunta para ser un poco más descriptivo? ("¿Cómo crear un instalador de aplicaciones Java (.exe) que incluya Tomcat y MySQL?", O algo así.) Gracias. – Jonik