| // |
| // Licensed to the Apache Software Foundation (ASF) under one |
| // or more contributor license agreements. See the NOTICE file |
| // distributed with this work for additional information |
| // regarding copyright ownership. The ASF licenses this file |
| // to you under the Apache License, Version 2.0 (the |
| // "License"); you may not use this file except in compliance |
| // with the License. You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, |
| // software distributed under the License is distributed on an |
| // "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| // KIND, either express or implied. See the License for the |
| // specific language governing permissions and limitations |
| // under the License. |
| // |
| |
| = Encapsulamento Nativo no NetBeans IDE |
| :jbake-type: tutorial |
| :jbake-tags: tutorials |
| :jbake-status: published |
| :icons: font |
| :syntax: true |
| :source-highlighter: pygments |
| :toc: left |
| :toc-title: |
| :description: Encapsulamento Nativo no NetBeans IDE - Apache NetBeans |
| :keywords: Apache NetBeans, Tutorials, Encapsulamento Nativo no NetBeans IDE |
| |
| Escrito por Petr Somol e Alyona Stashkova |
| |
| O encapsulamento nativo foi apresentado pela primeira vez como parte do JavaFX 2.2 SDK, permitindo que você encapsule uma aplicação como um _encapsulamento nativo_ e, em seguida, instale e execute a aplicação sem nenhuma dependência em um sistema JRE ou JavaFX SDK. Em seguida, ele se tornará utilizável também para projetos Java SE. |
| |
| O encapsulamento nativo não altera o modelo de implantação de sua aplicação: ele usa a aplicação como está, encapsula com runtime de Java e produz um instalador que é comum para o sistema operacional que você está usando. O ponto principal é criar uma única ação não importando o runtime de Java que os usuários têm na máquina-alvo. Você pode usar um instalador e executá-lo em uma máquina na qual não há rastreamento de Java. Isso instalará a aplicação e os bits de runtime Java necessários. O tamanho desses instaladores é bem grande porque mesmo uma aplicação "Hello world" transportará uma parte grande de artefatos de runtime Java. |
| |
| Neste tutorial, você criará um instalador ``EXE`` de uma aplicação Java SE e um instalador ``MSI`` para uma aplicação JavaFX para o sistema operacional Windows, com base nas aplicações de amostra encapsuladas com o IDE. |
| |
| *Observação:* |
| |
| * Os instaladores ``EXE`` e ``MSI`` que você obtém são específicos da plataforma; eles só serão executados em um sistema compatível com a plataforma Java de destino cujos pacotes ``EXE`` / ``MSI`` instaláveis foram criados. (Por exemplo, se um instalador ``EXE`` ou ``MSI`` foi criado em uma máquina com um JDK de 64 bits instalado, ele deverá ser executado em uma máquina com Windows de 64 bits instalado). |
| * No Windows, ambas as aplicações são instaladas no diretório ``C:\Users\<username>\AppData\Local\`` e estão disponíveis no menu Iniciar. |
| |
| |
| image::images/netbeans-stamp-80-74.png[title="O conteúdo desta página se aplica ao NetBeans IDE 7.4 ou 8.0"] |
| |
| |
| *Para seguir este tutorial, são necessários os recursos e o software a seguir.* |
| |
| |=== |
| |Software ou Recurso |Versão Necessária |
| |
| |link:http://netbeans.org/downloads/index.html[+NetBeans IDE+] |7.4 ou 8.0 |
| |
| |link:http://www.oracle.com/technetwork/java/javafx/downloads/index.html[+JDK (Java Development Kit)+] |7 atualização 25 (ou mais recente) ou 8 |
| |
| |link:http://www.jrsoftware.org/[+Inno Setup+] |5.5 ou versão mais recente |
| |
| |link:http://wixtoolset.org/[+WiX+] |3.7 ou versão mais recente |
| |=== |
| |
| |
| == Instalando e Adicionando as Ferramentas Necessárias ao Caminho |
| |
| Para usar o suporte do IDE para encapsulamento nativo, as seguintes ferramentas adicionais precisam ser instaladas: |
| |
| * O link:http://www.jrsoftware.org/[+Inno Setup 5.5+] (ou uma versão mais recente) para produzir instaladores EXE no Windows é obrigatório. |
| * O link:http://wixtoolset.org/[+WiX 3.7+] (ou uma versão mais recente) para produzir instaladores MSI no Windows é obrigatório. |
| |
| *Observação:* para obter uma lista de ferramentas obrigatórias para criar instaladores para diferentes plataformas, consulte "link:http://www.oracle.com/pls/topic/lookup?ctx=nb7400&id=NBDAG2508[+Encapsulando uma Aplicação como um Instalador Nativo+]" em _Desenvolvendo Aplicações com o NetBeans IDE_. |
| |
| *Para instalar o Inno Setup:* |
| |
| 1. Faça Download do ``ispack-5.5.3.exe`` na página link:http://www.jrsoftware.org/isdl.php[+Downloads do Inno Setup+] |
| 2. Clique duas vezes no arquivo para iniciar o instalador. |
| 3. Aceite o contrato de licença do Inno Setup e clique em Próximo. |
| 4. Siga as instruções do assistente de instalação para instalar o Inno Setup. |
| |
| *Para instalar o WiX:* |
| |
| 1. Faça download do ``wix37.exe`` na página link:http://wix.codeplex.com/releases/view/99514[+WiX Toolset - Download+]. |
| 2. Clique duas vezes no arquivo para iniciar o instalador. |
| 3. Siga as instruções do assistente de instalação para instalar o WiX. |
| |
| *Para adicionar o Inno Setup e/ou WiX à variável Path do sistema:* |
| |
| 1. No Windows 7, selecione Iniciar > Computador > Propriedades do Sistema > Configurações avançadas do sistema. |
| 2. Selecione a guia Avançado e clique no botão Variáveis de Ambiente. |
| 3. No painel Variáveis do Sistema, clique duas vezes na variável Path. |
| 4. Na caixa de diálogo Editar Variável do Sistema, adicione um ponto-e-vírgula seguido de um novo caminho ao campo Valor da variável (por exemplo, ``C:\Arquivos de Programa (x86)\Inno Setup 5 `` ou ``C:\Arquivos de Programa (x86)\WiX Toolset v3.6\bin`` ). |
| 5. Clique em OK para fechar todas as caixas de diálogo abertas. |
| |
| *Observações:* |
| |
| * Para verificar se a ferramenta instalada está no Path, abra a janela Prompt de Comando e digite ``iscc.exe`` para Inno Setup ou ``candle.exe`` para WiX. (Se o Prompt de Comando for fechado instantaneamente, tente especificar ``cmd.exe /c cmd.exe /k iscc.exe`` ou ``cmd.exe /c cmd.exe /k candle.exe`` respectivamente.) |
| A figura a seguir mostra o que o Prompt de Comando deve exibir, caso o Inno Setup seja adicionado à variável Path do sistema. |
| |
| [.feature] |
| -- |
| image::images/cmd_small.png[role="left", link="images/cmd.png"] |
| -- |
| |
| * Certifique-se de que o IDE tenha sido reiniciado após as ferramentas serem adicionadas à variável Path do sistema. |
| |
| |
| == Encapsulamento Nativo nos Projetos Java SE |
| |
| Para utilizar o suporte de encapsulamento nativo no IDE, é necessário concluir o seguinte: |
| |
| * <<createse,criar um projeto IDE>> |
| * <<enable,ativar as ações de encapsulamento nativo no projeto>> |
| * <<buildse,limpar e construir o projeto>> |
| * <<instse,encapsular uma aplicação em um instalador>> |
| |
| |
| === Configurando um Projeto Java SE |
| |
| Antes de encapsular uma aplicação em um instalador, é necessário criar uma aplicação. |
| |
| Você criará um novo projeto Java SE com o exemplo do jogo de Anagramas que é enviado com o NetBeans IDE. |
| |
| *Para criar um projeto do IDE:* |
| |
| 1. No IDE, escolha Arquivo > Novo Projeto. |
| 2. No assistente Novo Projeto, expanda a categoria Amostras e selecione Java. |
| 3. Escolha o Jogo de Anagramas na lista Projetos. Em seguida, clique em Próximo. |
| |
| [.feature] |
| -- |
| image::images/new_javase_prj_small.png[role="left", link="images/new_javase_prj.png"] |
| -- |
| |
| |
| |
| . No painel Nome e Local, deixe os valores default para os campos Nome do Projeto e Localização do Projeto. |
| |
| |
| . Clique em Finalizar. |
| O IDE cria e abre o projeto Java SE. |
| |
| Para testar se o projeto criado funciona, execute-o escolhendo Executar > Executar Projeto no menu principal. |
| A aplicação Anagramas deve ser iniciada e exibida em sua máquina. |
| |
| image::images/anagrams.png[] |
| |
| |
| === Ativando Encapsulamento Nativo no IDE |
| |
| As ações do encapsulamento nativo são desativadas no IDE, por default. |
| |
| Clique com o botão direito do mouse no projeto AnagramGame na janela Projetos, para verificar as ações disponíveis para o projeto Java SE criado no IDE: não há ações relacionadas ao pacote no menu de contexto do projeto. |
| |
| image::images/context_wo_pkg.png[] |
| |
| *Para ativar as ações de encapsulamento nativo do projeto:* |
| |
| 1. Clique com o botão direito do mouse no nó do projeto na janela Projetos e selecione as Propriedades no menu de contexto. |
| 2. Na caixa de diálogo Propriedades do Projeto, escolha a categoria Implantação e selecione Ativar Ações de Encapsulamento Nativo na opção Menu do Projeto. |
| |
| [.feature] |
| -- |
| image::images/enable_native_pkg_small.png[role="left", link="images/enable_native_pkg.png"] |
| -- |
| |
| |
| |
| . Clique em OK. |
| Um comando Encapsular como é adicionado ao menu de contexto do projeto. |
| |
| image::images/pkg_enabled.png[] |
| |
| |
| === Construindo uma Aplicação |
| |
| É hora de limpar e construir sua aplicação para implantação. |
| |
| *Para limpar e construir seu projeto:* |
| |
| * Escolha Executar > Limpar e Construir Projeto do menu principal. |
| O IDE exibe os resultados na janela de Saída. |
| |
| [.feature] |
| -- |
| image::images/output_small.png[role="left", link="images/output.png"] |
| -- |
| |
| Uma pasta ``dist`` que contém um arquivo ``jar`` é criada na pasta do projeto. |
| |
| |
| === Criando um Instalador ``EXE`` |
| |
| A aplicação agora pode ser encapsulada em um instalador para Windows. |
| |
| *Para construir um instalador ``EXE`` :* |
| |
| * Clique com o botão direito do mouse no projeto AnagramGame e escolha Encapsular como > Instalador EXE do menu de contexto. |
| |
| *Observação:* o IDE só criará um instalador ``EXE`` se o Inno Setup for <<tool,instalado e adicionado à variável Path do sistema>>. |
| |
| O IDE exibe o andamento e o resultado do processo de encapsulamento na janela de Saída. |
| |
| [.feature] |
| -- |
| image::images/output_se_exe_small.png[role="left", link="images/output_se_exe.png"] |
| -- |
| |
| *Observação:* o IDE primeiro registra o progresso e, em seguida, durante um período verifica como se nada estivesse acontecendo - é exatamente neste momento em que o Inno Setup está trabalhando em segundo plano. Demora um pouco para o encapsulamento ser concluído. |
| |
| Quando o instalador ``EXE`` estiver pronto, ele será colocado no diretório ``AnagramGame/dist/bundles/`` . |
| |
| image::images/anagram_exe.png[] |
| |
| |
| == Encapsulamento de Aplicação Autocontida nos Projetos JavaFX |
| |
| Para criar uma aplicação JavaFX instalável usando o suporte ao encapsulamento nativo no IDE, é necessário concluir o seguinte: |
| |
| * <<createfx,criar um projeto JavaFX no IDE>> |
| * <<enablefx,ativar o suporte ao encapsulamento nativo para o projeto>> |
| * <<buildfx,limpar e construir uma aplicação JavaFX>> |
| * <<instfx,construir uma aplicação JavaFX instalável>> |
| |
| |
| === Criando um Projeto JavaFX |
| |
| Você começa a criação de um projeto JavaFX usando o projeto de amostra BrickBreaker encapsulado com o IDE. |
| |
| *Para criar um projeto JavaFX no IDE:* |
| |
| 1. No IDE, escolha Arquivo > Novo Projeto. |
| 2. No assistente Novo Projeto, expanda a categoria Amostras e selecione JavaFX. |
| 3. Escolha BrickBreaker na lista Projetos. Em seguida, clique em Próximo. |
| 4. No painel Nome e Local, deixe os valores default para os campos Nome do Projeto, Localização do Projeto e Plataforma JavaFX. |
| |
| [.feature] |
| -- |
| image::images/new_javafx_prj_small.png[role="left", link="images/new_javafx_prj.png"] |
| -- |
| |
| |
| |
| . Clique em Finalizar. |
| O projeto JavaFX do BrickBreaker é exibido na janela Projetos no IDE. |
| |
| Para testar se o projeto criado funciona, execute-o escolhendo Executar > Executar Projeto (BrickBreaker) no menu principal. |
| A aplicação Brick Breaker deve ser iniciada e exibida em sua máquina. |
| |
| [.feature] |
| -- |
| image::images/brickbreaker_small.png[role="left", link="images/brickbreaker.png"] |
| -- |
| |
| |
| === Ativando Encapsulamento Nativo no Projeto |
| |
| Para usar o suporte ao encapsulamento nativo no IDE para seu projeto, é necessário ativá-lo primeiro. |
| |
| Se clicar com o botão direito no mouse no projeto Brick Breaker, você não verá nele ações relacionadas a encapsulamento nativo. |
| |
| image::images/javafx_wo_pkg.png[] |
| |
| *Para ativar as ações de encapsulamento nativo no menu de contexto do projeto:* |
| |
| 1. Clique com o botão direito do mouse no nó do projeto na janela Projetos e selecione as Propriedades no menu de contexto. |
| 2. Na caixa de diálogo Propriedades do Projeto, escolha a categoria Construir e selecione a opção Ativar Encapsulamento Nativo. |
| |
| [.feature] |
| -- |
| image::images/enable_native_pkg_fx_small.png[role="left", link="images/enable_native_pkg_fx.png"] |
| -- |
| |
| |
| |
| . Clique em OK. |
| A opção Encapsular como item é adicionada ao menu de contexto do projeto. |
| |
| image::images/pkg_fx_enabled.png[] |
| |
| |
| === Construindo uma Aplicação |
| |
| Sua aplicação JavaFX agora está pronta para ser limpa e construída. |
| |
| *Para limpar e construir seu projeto:* |
| |
| * Escolha Executar > Limpar e Construir Projeto do menu principal. |
| O IDE exibe os resultados na janela de Saída. |
| |
| *Observação:* se a construção for bem-sucedida, mas o IDE exibir ``advertência: [opções] caminho de classe de bootstrap não definido com -código-fonte 1.6`` na janela de Saída, o formato de Código-fonte/Binário precisará ser definido como JDK 8 nas propriedades do projeto e o projeto precisa ser limpo e construído novamente, como segue: |
| |
| 1. Clique com o botão direito do mouse no projeto BrickBreaker na janela Projetos e escolha Propriedades. |
| 2. Na caixa de diálogo Propriedades do projeto, selecione a categoria Executar Códigos-fontes. |
| 3. Defina o formato Código-fonte/Binário para JDK 8 e clique em OK. |
| 4. Clique com o botão direito do mose na janela Projetos e escolha Limpar e Construir no menu de contexto. |
| |
| |
| === Criando um Instalador ``MSI`` |
| |
| A aplicação agora pode ser encapsulada em um pacote instalável específico do Windows. |
| |
| *Para construir um instalador ``MSI`` :* |
| |
| * Clique com o botão direito do mouse no projeto BrickBreaker e escolha Encapsular como > Instalador MSI do menu de contexto. |
| |
| *Observação:* o IDE cria um instalador ``MSI`` somente se WiX for <<tool,instalada e adicionada à variável Path do sistema>>. |
| |
| O IDE exibe o andamento e o resultado do processo de encapsulamento na janela de Saída. |
| |
| [.feature] |
| -- |
| image::images/output_fx_msi_small.png[role="left", link="images/output_fx_msi.png"] |
| -- |
| |
| *Observação:* o IDE primeiro registra o progresso e, em seguida, durante um período verifica como se nada estivesse acontecendo - é exatamente neste momento em que a WiX está trabalhando em segundo plano. Demora um pouco para o encapsulamento ser concluído. |
| |
| A aplicação JavaFX instalável está localizada no diretório ``BrickBreaker/dist/bundles/`` . |
| |
| image::images/brickbreaker_msi.png[] |
| |
| |
| == [[Verificando as Aplicações Instaláveis]] |
| |
| Quando os instaladores de ``AnagramGame-1.0.exe`` e ``BrickBreaker-1.0.msi`` forem concluídos, você precisará em qual diretório as aplicações Anagram e BrickBreaker foram instaladas. |
| |
| *Para verificar os instaladores:* |
| |
| 1. Procure o arquivo do instalador ( ``AnagramGame-1.0.exe`` ou ``BrickBreaker-1.0.msi`` ) em seu disco rígido. |
| 2. Clique duas vezes para executar o instalador. |
| |
| As duas aplicações devem ser instaladas no diretório ``C:\Users\<username>\AppData\Local\`` e devem estar disponíveis no menu Iniciar. |
| |
| |
| == Consulte Também |
| |
| * link:http://www.oracle.com/pls/topic/lookup?ctx=nb8000&id=NBDAG2508[+Encapsulando uma Aplicação como um Instalador Nativo+] em _Desenvolvendo Aplicações com o NetBeans IDE_ |
| * link:http://docs.oracle.com/javafx/2/deployment/self-contained-packaging.htm[+Implantando Aplicações JavaFX: Encapsulamento da Aplicação Autocontida+] |
| * link:http://docs.oracle.com/javase/7/docs/technotes/guides/jweb/packagingAppsForMac.html[+Encapsulando uma Aplicação Java para Distribuição em uma Máquina+] |
| link:/about/contact_form.html?to=3&subject=Feedback:%20Native%20Packaging%20In%20NetBeans%20IDE[+Enviar Feedback neste Tutorial+] |
| |
| |
| link:../../trails/matisse.html[+Voltar à Trilha do Aprendizado+] |
| |