Como adicionar o projeto JreEmulation ao seu projeto Xcode

A biblioteca de emulação JRE do J2ObjC pode ser criada usando o Xcode e pode ser incluída como um subprojeto nos seus projetos Xcode. Isso permite que você controle as configurações usadas para criar essa biblioteca para que ela possa ser usada melhor pelos seus projetos.

Faça o download do código-fonte

Siga uma destas instruções: - Faça o download e atualize o pacote de origem atual em um diretório local; - ou - clone a árvore de código-fonte usando git (link em inglês). A vantagem de um check-out de origem local é que é mais fácil se manter atualizado com as últimas alterações do projeto J2ObjC, mas exige algum conhecimento dos sistemas de controle de versão.

O código-fonte pode ficar em qualquer lugar no seu sistema local. Para os propósitos deste documento, usaremos /usr/local/src/j2objc, mas mude esse caminho como você preferir.

Instalar o Build Tools

As ferramentas de linha de comando do Xcode e o Apache Maven precisam ser instalados para criar o J2ObjC. Veja algumas dicas:

Essas são pesquisas do Google em vez de páginas estáticas, porque a instalação geralmente pode mudar com novas versões do Mac OS X e do Xcode.

Criar o projeto

Siga as etapas de Criação do J2ObjC. As compilações de linha de comando são opcionais, mas são mais fáceis de depurar do que quando invocadas dentro do Xcode.

Ao depurar o JRE, é recomendável adicionar as seguintes linhas na parte de cima de jre_emul/environment.mk antes de executar uma compilação limpa:

DEBUGGING_SYMBOLS=YES
OPTIMIZATION_LEVEL=0

O projeto JreEmulation Xcode

No Xcode, abra /usr/local/src/j2objc/jre_emul/JreEmulation.xcodeproj. Suas pastas incluem:

  • Classes: o conjunto das principais classes de emulação JRE, que não são criadas pela tradução de arquivos de origem Java.
  • jre_emul_tests: o conjunto de testes de unidade criado e executado no Xcode. Eles não incluem os testes JUnit traduzidos, que são criados e executados na linha de comando usando make test no diretório jre_emul.
  • Classes transpiladas: são os arquivos criados pela tradução dos arquivos de origem Java da biblioteca JRE. Observações:
  • O Xcode marca os arquivos ausentes em vermelho. Como esses arquivos são criados durante a criação, inicialmente todos ficam vermelhos até que o projeto seja criado.
  • Estamos adicionando novas classes regularmente à biblioteca de emulação JRE, portanto, essa lista pode estar desatualizada. Nesse caso, clique com o botão direito do mouse nessa pasta, clique em "Add Files to JreEmulation.xcodeproj" e adicione novos arquivos .m e .h de jre_emul/build_result/Classes e dos subdiretórios.

Para criar o projeto JreEmulation, selecione o destino jre_emul e clique no botão Run do Xcode. Para criar e executar os testes de unidade, clique na seta para baixo ao lado do botão Run e selecione Test.

Adicionar o projeto JreEmulation ao seu projeto

  • No painel "NAviagator" do projeto, à esquerda, clique com o botão direito do mouse no projeto e selecione "Adicionar arquivos a Nome do projeto".
  • Encontre o arquivo jre_emul/JreEmulation.xcodeproj e clique no botão Add.
  • Clique no seu projeto e selecione o destino principal dele e, em seguida, selecione a guia "Fases de build" do destino.
  • Abra a seção "Target Dependencies", clique no botão + e selecione o destino jre_emul.
  • Abra a seção "Vincular binário com bibliotecas", clique no botão + e selecione libjre_emul.a.
  • Selecione a guia "Build Settings" do destino, encontre os "Header Search Paths" e adicione o caminho ao diretório /usr/local/src/j2objc/dist/include, substituindo o local real.

Agora, quando o projeto for criado, o JreEmulation será feito conforme necessário.