Duvida IZPACK(criar instalador)

12 respostas
fabioebner

Pessoal, eu estou tentando criar um instalador com o IZPACK, consegui, porem o problema e q ele nao cria os atalhos no desktop, pelo q eu andei lendo isso e meio complicado pq depende da versao do windows q o cara usa e tal…

agora tenho uma duvida… sera q eu consigo fazer um programinha(que liste os diretorios ate achar o desktop e crie um atalho la na raca) em java mesmo q qdo ele roda o instalador ele execute esse programa

alguam sabe uma maneira melhor??? pq tentei usar aquele outro (num lembro o nome) mas ele so cria .exe e nao queria perder a portabilidade

alguem tem alguma sugestao??

obrigado

12 Respostas

peron

Cara, eu fiz uma vez um instalador com o IzPack, e com o uso de plugins especificos para cada plataforma (cria-se uma entrada para win e outra pra linux) e funcionou certinho os esquemas de Atalho no Desktop.

Dá uma olhada no site. Eu nao achei mais meu XML aqui, senao te passava…

Mas IzPack é o melhor… que eu conheço

sds

LuizLG

Boa Tarde

Aqui eu utilizo normalmente e crio atalhos no desktop. Testei em win2k , winxp, openSuse10.2 e openSuse10.3. =p

Dá uma olhada nos arquivos xml e faça as mudanças necessárias. =]

install.xml

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<installation version="1.0">
    <info>
        <appname>Meu Software</appname>
        <appversion>6.9</appversion>
        <authors>
            <author name="Luiz Gustavo Marcondes" email="[email removido]"/>
        </authors>
        <url>http://www.meusoftware.com.br/</url>
    </info>

    <guiprefs width="640" height="480" resizable="no"/>

    <locale>
	    <langpack iso3="eng"/>
	    <langpack iso3="por"/>
	    <langpack iso3="spa"/>	
    </locale>

    <native type="izpack" name="ShellLink.dll"/>

    <resources>
	    <res src="shortcutSpec.xml" id="shortcutSpec.xml"/>
    </resources>

    <panels>
        <panel classname="HelloPanel"/>
        <panel classname="TargetPanel"/> 
        <panel classname="PacksPanel"/>
	<panel classname="ShortcutPanel"/>
        <panel classname="InstallPanel"/>
        <panel classname="SimpleFinishPanel"/>
    </panels>

    <packs>
        <pack name="Base" required="yes">
            <description>Normal installation</description>
	    <file src="MeuSoftware.jar" targetdir="$INSTALL_PATH"/>
	    <file src="lala.properties" targetdir="$INSTALL_PATH"/>
	    <file src="lib" targetdir="$INSTALL_PATH"/>
	    <file src="log" targetdir="$INSTALL_PATH"/>
	    <file src="icon.bmp" targetdir="$INSTALL_PATH"/>
	    <file src="RodarMeuSoftware.bat" targetdir="$INSTALL_PATH"/>
	    <file src="uninstall.bat" targetdir="$INSTALL_PATH/Uninstaller"/>
        </pack>
    </packs>

</installation>

shortcutSpec.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<shortcuts>
	<programGroup defaultName="MeuSoftware" 
		      location="startMenu"/>
	
	<shortcut name="Meu Software"
		  target="$INSTALL_PATH\RodarMeuSoftware.bat"
		  commandLine=""
		  workingDirectory="$INSTALL_PATH"
		  description="This starts MeuSoftware"
		  iconFile="$INSTALL_PATH\icon.bmp"
		  iconIndex="0"
		  type="Application"
		  encoding="UTF-8"
		  programGroup="yes"
		  desktop="yes"
		  applications="no"
		  startMenu="no"
		  startup="no">
	</shortcut>
	
	<shortcut name="log"
		  target="explorer"
		  commandLine="&quot;$INSTALL_PATH\log\&quot;"
		  workingDirectory=""
		  description=""
		  iconFile=""
		  iconIndex="0"
		  type="Application"
		  encoding="UTF-8"
		  programGroup="yes"
		  desktop="yes"
		  applications="no"
		  startMenu="no"
		  startup="no">
	</shortcut>
	
	<shortcut name="uninstaller"
		  target="java"
		  commandLine="-jar &quot;$INSTALL_PATH\Uninstaller\uninstaller.jar&quot;"
		  workingDirectory=""
		  description=""
		  iconFile=""
		  iconIndex="0"
		  type="Application"
		  encoding="UTF-8"
		  programGroup="yes"
		  desktop="yes"
		  applications="no"
		  startMenu="no"
		  startup="no">
	</shortcut>
	
</shortcuts>

Unix_shortcutSpec.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

<shortcuts>
	
	<programGroup defaultName="IzForge/IzPack" location="applications"/>

	<shortcut
		name="Meu Software"
		programGroup="yes"
		desktop="yes"
		applications="no"
		startMenu="yes"
		startup="no"
		target="$INSTALL_PATH/RodarMeuSoftware.bat"
		commandLine=""
		workingDirectory="$INSTALL_PATH/"
		description="Teste"
		iconFile="$INSTALL_PATH/bin/icons/izpack.png"
		iconIndex="0"
		type="Application"
		encoding="UTF-8"
		terminal="true"
		KdeSubstUID="false"
		initialState="normal">
		<createForPack name="Base"/>
	</shortcut>

</shortcuts>

Falou!

fabioebner

luiz nada feito cara.. deixei igualzinho se liga como esta:

estrutura de diretorio
c:\Agente
     - extras
             *desktop.xml
             *installer.xml
     -images
             *add.gif    
             *produto.ico
             *splash.jpg
     -dis
             *AgenteIntegraBrasil.jar
             *run.bat
           -lib
             *toda as libs do meu projeto

agora tenho os seguintes xml

installer.xml
<?xml version="1.0" encoding="utf-8"    standalone="yes"?>
<installation version="1.0">
	<info>
		<appname>Agente IntegraBrasil</appname>
		<appversion>1.0</appversion>
		<authors>
			<author name="Fabio Ebner - Dna Solution" email="[email removido]"/>
		</authors>
		<url>http://www.integrabrasil.org.br</url>
	</info>

	<guiprefs width="480" height="320" resizable="no"/>

     <locale>  
         <langpack iso3="eng"/>  
         <langpack iso3="por"/>  
         <langpack iso3="spa"/>      
     </locale>  

	<native type="izpack" name="ShellLink.dll"/>

    <resources>
		<res src="extras/desktop.xml" id="desktop.xml"/>
    </resources>

   
     <panels>  
         <panel classname="HelloPanel"/>  
         <panel classname="TargetPanel"/>   
         <panel classname="PacksPanel"/>  
         <panel classname="ShortcutPanel"/>  
         <panel classname="InstallPanel"/>  
         <panel classname="SimpleFinishPanel"/>  
     </panels>  

	<packs>
	 <pack name="Principal" required="yes">
	    <description>Contém os arquivos necessários para execução do programa</description>
		
		<file src="images/produto.ico"    targetdir="$INSTALL_PATH"/>	    
		<file src="dist/run.bat"    targetdir="$INSTALL_PATH"/>
		<file src="images/add.gif"    targetdir="$INSTALL_PATH"/>
		<file src="dist/AgenteIntegraBrasil.jar"    targetdir="$INSTALL_PATH"/>
		<file src="images/splash.jpg"    targetdir="$INSTALL_PATH"/>
	 </pack>
	</packs>

</installation>
o desktop.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>  
<shortcuts>
   <programGroup defaultName="Agente IntegraBrasil" location="startMenu"/>
   
   <shortcut name="AgenteIntegraBrasil"
      	 target="$INSTALL_PATH\run.bat"
         commandLine="" 
		 workingDirectory="$INSTALL_PATH" 
         description="Clique aqui para iniciar agente IntegraBrasil"
		 iconFile="$INSTALL_PATH\images\produto.ico"
		 inconIndex="0"
		 type="Application"
		 encoding="UTF-8" 
         programGroup="yes"
		 desktop="yes"    
		 applications="no"
         startMenu="no" 
		 startup="no">
      </shortcut>

     <shortcut name="uninstaller"  
           target="java"  
           commandLine="-jar "$INSTALL_PATH\Uninstaller\uninstaller.jar""  
           workingDirectory=""  
           description=""  
           iconFile=""  
           iconIndex="0"  
           type="Application"  
           encoding="UTF-8"  
           programGroup="yes"  
           desktop="yes"  
           applications="no"  
           startMenu="no"  
           startup="no">  
     </shortcut> 
   </shortcuts>

estou rodando ele assim:

compile extras\installer.xml -b . -o install.jar -k standard
dentro do meu c:\Agente

o q eu achei estranho e q vc seleciona o painel:

e para mim nao aparece esse painel na instalacao.. vc sabe o q pode ser???

obs: dentro do meu pack nao coloquei as libs apenas para teste(nao ficar mto grande o arquivo)

LuizLG

Fabio

Não posso te garantir pois faz tempo que li a documentação, mas pelo que lembro o nome PRECISA ser “shortcutSpec.xml”.

O é utilizado para criar o painel que mostra a opção para criar o atalho, e deve buscar o arquivo “shortcutSpec.xml” ou “Unix_shortcutSpec.xml”, dependendo do SO.

Se você der uma lida na documentação deve encontrar isso, mas em todo caso experimenta só trocar o nome do seu xml de “desktop.xml” para “shortcutSpec.xml”.

Falou

fabioebner

luiz… nada feito… troquei o nome para shortcutSpec.xml e deu na mesma… ele nao cria o esquema :frowning:

LuizLG

Qual SO está utilizando?
Dá algum erro na hora da criação ???

Bom, se você está chamando o panel no install.xml e ele não encontrar ou der algum erro na hora de criar, deveria aparecer…

fabioebner

entao cara eu estou usando o winXP e ele nao da nenhum erro na hora de criacao… tem como eu fazer um log de instalacao?? tipo se der algum erro na instalacao ele cria um log ou coisa assim??

valeus

LuizLG

Quanto a isso não sei, estou falando sobre erros no momento da criação do instalador (quando você utiliza o compile).

Posta denovo seus" install.xml" e “shortcutSpec.xml” atuais.

fabioebner

entao cara esta assim:

installer.xml
<?xml version="1.0" encoding="utf-8"    standalone="yes"?>
<installation version="1.0">
	<info>
		<appname>Agente IntegraBrasil</appname>
		<appversion>1.0</appversion>
		<authors>
			<author name="Fabio Ebner - Dna Solution" email="[email removido]"/>
		</authors>
		<url>http://www.integrabrasil.org.br</url>
	</info>

	<guiprefs width="480" height="320" resizable="no"/>

     <locale>  
         <langpack iso3="eng"/>  
         <langpack iso3="por"/>  
         <langpack iso3="spa"/>      
     </locale>  

	<native type="izpack" name="ShellLink.dll"/>

    <resources>
		<res src="extras/shortcutSpec.xml" id="shortcutSpec.xml"/>
    </resources>

   
     <panels>  
         <panel classname="HelloPanel"/>  
         <panel classname="TargetPanel"/>   
         <panel classname="PacksPanel"/>  
         <panel classname="ShortcutPanel"/>  
         <panel classname="InstallPanel"/>  
         <panel classname="SimpleFinishPanel"/>  
     </panels>  

	<packs>
	 <pack name="Principal" required="yes">
	    <description>Contém os arquivos necessários para execução do programa</description>
		
		<file src="images/produto.ico"    targetdir="$INSTALL_PATH"/>	    
		<file src="dist/run.bat"    targetdir="$INSTALL_PATH"/>
		<file src="images/add.gif"    targetdir="$INSTALL_PATH"/>
		<file src="dist/AgenteIntegraBrasil.jar"    targetdir="$INSTALL_PATH"/>
		<file src="images/splash.jpg"    targetdir="$INSTALL_PATH"/>
	 </pack>
	</packs>

</installation>
shortcutSpec.xml
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>  
<shortcuts>
   <programGroup defaultName="Agente IntegraBrasil" location="startMenu"/>
   
   <shortcut name="AgenteIntegraBrasil"
      	 target="$INSTALL_PATH\run.bat"
         commandLine="" 
		 workingDirectory="$INSTALL_PATH" 
         description="Clique aqui para iniciar agente IntegraBrasil"
		 iconFile="$INSTALL_PATH\images\produto.ico"
		 inconIndex="0"
		 type="Application"
		 encoding="UTF-8" 
         programGroup="yes"
		 desktop="yes"    
		 applications="no"
         startMenu="no" 
		 startup="no">
      </shortcut>

     <shortcut name="uninstaller"  
           target="java"  
           commandLine="-jar "$INSTALL_PATH\Uninstaller\uninstaller.jar""  
           workingDirectory=""  
           description=""  
           iconFile=""  
           iconIndex="0"  
           type="Application"  
           encoding="UTF-8"  
           programGroup="yes"  
           desktop="yes"  
           applications="no"  
           startMenu="no"  
           startup="no">  
     </shortcut> 
   </shortcuts>

cara vou testar uma coisa aqui.. (testar faze o esquema em java 5) duvido q seja isso mas bele.. e outra tentei com os seus arquivos e nao deu em nada tbm

abracos

LuizLG

No “shortcutSpec.xml” ficou lt;shortcuts> , troca por <shortcuts> para ver se não é isso…

SE não der, tenta alterar as barras <shortcut name="AgenteIntegraBrasil" target="$INSTALL_PATH\run.bat" para <shortcut name="AgenteIntegraBrasil" target="$INSTALL_PATH/run.bat"

Agora se não resolver, não sei mais o que fazer, rs. Aquele exemplo que postei funcionou normalmente em windows e linux.

Boa sorte =D

fabioebner

luiz consegui… a unica coisa q eu fiz diferente foi colocar o ShortcupPanel apos o InstallPanel

<panel classname="InstallPanel"/>     
     <panel classname="ShortcutPanel"/>

e fogo neh. mas pelo menos foi. obrigado cara

abracos

LuizLG

É, a ordem dos tratores ALTERA o viaduto =p

=D

Falou!
[]s

Criado 12 de dezembro de 2007
Ultima resposta 13 de dez. de 2007
Respostas 12
Participantes 3