Pular para o conteúdo principal

Empacotando sua aplicação Java FX para formato nativo

Depois de preparar e testar sua aplicação chega a hora de empacotar tudo e disponibilizar para os usuários, existem algumas formas de se fazer isso . Quero mostrar aqui como entregar seu software como um pacote nativo , no caso aqui para MAC.


Felizmente isso é bem tranquilo de se fazer, isso se você está usando o Netbeans, confira o passo a passo abaixo :


Prepare o projeto para o bundle (pacote em ingles), para isso clique com o botão direito em cima do projeto e vá na opção propriedades( figura 1).


Na janela de propriedades procurar a opção implantação, nessa opção selecionar ativar encapsulamento nativo. Depois de ok.(figura 2) 



Bom feito o passo 2 uma nova opção vai aparecer no menu de contexto do projeto, a opção encapsular como.(figura 3) 



Antes de preparar o pacote , execute o limpar e construir ( build and clean - o ícone do martelo com a vassoura faz a mesma coisa) , depois volte ao menu de contexto e, no caso dos Macs, escolha encapsular como imagem DMG. O processo de empacotamento vai acontecer, e a sua aplicação vai ser armazenada na pasta do projeto , o seguinte caminho : pasta do projeto/dist/bundles.(figura 4) .



Note que o arquivo está relativamente grande , isso porque no empacotamento o netbeans faz uma copia do JVM ( java virtual Machine) para dar suporte ao pacote , assim o aplicativo funciona como um app nativo do mac, mesmo que o usuário não tenha o java instalado.(figura5).

O resultado final é um DMG ( imagem de disco ) como se fosse um app nativo :-)( figura 6) .







Comentários

Postagens mais visitadas deste blog

Projetos em Sala de aula

A educação baseada em projetos vem sendo usada como uma metodologia poderosa para melhor preparar estudantes do século 21, já que leva os alunos a trabalhar em conjunto, se organizar, pesquisar e executar harmonicamente. Porém, antes de levar a metodologia para a sala de aula, será que os professores sabem como e quais projetos trabalhar em suas disciplinas? Uma dessas novidades é o  PBLU (Project Based Learning University ), plataforma gratuita que ajuda a capacitar professores para o uso de projetos em suas disciplinas, como uma forma de agregar conteúdo e motivar os estudantes. Conheça os oito pontos principais para um bom programa de aprendizagem baseada em projeto: Ter conteúdo relevante.   O objetivo da abordagem é trabalhar os conceitos-chave das disciplinas acadêmicas a partir de um projeto. Desenvolver habilidades para o século 21.   Ao longo do projeto, os alunos deverão buscar uma resposta a um problema. Para isso, eles deverão buscar referências...

Video Aulas de Java já disponíveis no 4Shared

Turma segue as video aulas já disponíveis para download no 4Shared , espero que vocês gostem das aulas e por favor postem um comentario no blog dizendo o que vc's acharam preciso desse feed back para o constante aprimoramento das aulas . Basta escolher o arquivo clickar  no link para download ( tenha paciencia os arquivos são grandes ) <p>&lt;p&gt;&amp;amp;amp;amp;lt;p&amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;lt;br&amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;lt;br&amp;amp;amp;amp;amp;amp;amp;gt;se&amp;amp;amp;amp;lt;/p&amp;amp;amp;amp;gt;&lt;/p&gt;</p> Se a Janela de Download acima não funcionar tente acessar os arquivos usando o seguinte link http://www.4shared.com/dir/34812571/bf01348d/VideoAulas.html Bom estudo  :-)

Sistemas distribuidos: Enviando mensagens TCP Parte II - Servidor

Igual ao servidor UDP esse servidor só vai receber a mensagem e envia-la de volta , ou seja é um servidor de ECO mas com boa vontade basta fazer algumas alterações que vc tem um servidor de chat :-) . Server TCP: import java.net.*; import java.io.*; public class TCPServer { public static void main(String[] args) { try { int serverPort = 7896; ServerSocket listenSocket = new ServerSocket(serverPort); //socket de escuta o socket que vai atender as requisições while(true){ Socket client = listenSocket.accept( ); Connection c = new Connection(client); //precisamos criar a classe conection que vai //inicializar nossas threads para atender a cada requisição } } catch (IOException e) { System.out.println("Listem :" + e.getMessage( )); } }//fim do main }//fim da classe Depois de fin...