Back-End

6 abr, 2009

Liferay Portal 4.3.1 – Instalação do ambiente de desenvolvimento no eclipse 3.3 (Europa)

Publicidade

O Liferay Portal é uma solução empresarial de portal, open-source, desenvolvida em Java. Precisei recentemente de instalar o ambiente de desenvolvimento. A
documentação disponível refere-se à versão 4.2, que está desatualizada e
por isso contém bastantes erros. Como o processo não é lá muito intuitivo, resolvi fazer uma lista dos passos necessários para concluir a instalação.

1. Instalar o Liferay Portal

  • Comece por fazer o download de um dos bundles do Liferay disponíveis no endereço http://www.liferay.com/web/guest/downloads. Eu optei pela versão recomendada, ou seja, com o Tomcat.
  • Crie uma pasta no vosso filesystem para servir como base da instalação – $LIFERAY_HOME. Dê um nome sugestivo como por exemplo ‘liferay-portal’.
  • Dentro desta pasta, crie mais duas pastas, uma para conter a instalação do bundle do Liferay e outra para servir como workspace do eclipse (ex: $LIFERAY_HOME/tomcat e $LIFERAY_HOME/workspace).
  • Descompacte o conteúdo do arquivo do bundle para a pasta $LIFERAY_HOME/tomcat.

2. Testar a instalação

  • Executem o ficheiro $LIFERAY_HOME/tomcat/bin/startup.bat (ou startup.sh).
  • Abram um browser e apontem para o endereço http://localhost:8080/. Se tudo estiver bem devem conseguir ver a página inicial do liferay-portal.
  • Testar o login com as seguintes credenciais:

      [user]: test@liferay.com
      [pass]: test

3. Importar o projecto para o eclipse a partir do repositório SVN

  • Abra o eclipse.
  • Crie um novo workspace na pasta $LIFERAY_HOME/workspace – $WORKSPACE

File > Switch Workspace > Other (indique a pasta $WORKSPACE e confirme).

  • Importe o projeto a partir do SVN : File > Import > SVN > Projects from SVN.

        – Como URL indique o endereço https://lportal.svn.sourceforge.net/svnroot/lportal.
        – Selecione o projeto ‘portal’ e, dentro deste, ‘trunk’.
        – Selecione a opção ‘Check out as a project with the name specified:’ e indique como nome do projeto ‘liferay-portal’.
        – Deixe a opção ‘Checkout recursively’ selecionada.
        – Aproveite agora para fazer uma pausa enquanto o eclipse faz o checkout do projeto. No final, deverá aparecer o projeto ‘portal’ no Project Explorer do eclipse.

      Nota: Se tiver problemas no checkout, repita os passos anteriores. Mas, desta vez, desselecione a recursividade (Checkout recursively). O checkout termina rapidamente. Depois, use a opção team syncronize/update para obter o projeto completo. Isto permite ter mais controle sobre a operação pois, neste caso, é possível interromper o processo a qualquer altura e retomar posteriormente desde o ponto onde ficou.

  • Fechem o eclipse.

4. Gerar e configurar o ambiente de desenvolvimento

Antes de dar início a este passo verifique se você tem o ant 1.7.0 instalado. O build não funciona com versões anteriores.

O Liferay usa o Jikes como compilador default. Se você pretende usá-lo e ainda não o tem instalado, esse é o momento ideal para fazer isso 🙂 No meu caso, a natural preguiça levou-me a optar pelo habitual javac.

  • Abra um console de linha de comando na pasta $WORKSPACE/portal.
  • Crie o arquivo build.$USER.properties, onde $USER deve ser substituído pelo seu username na máquina ou, alternativamente, o nome da própria máquina, com o seguinte conteúdo:
      lp.ext.dir=$WORKSPACE/ext
      lp.eclipse.project.name=liferay-ext
      javac.fork=true
      javac.memoryMaximumSize=512m
      javac.compiler=modern

(ignore a última linha se estiver usando o jikes, e não se esqueça de substituir $WORKSPACE pelo path correspondente).

  • Executem o comando:
      ant clean start build-ext
  • Aproveitem para fazer mais uma pausa 😉 .

Após a conclusão do build, deve existir uma pasta ext no seu workspace.

  • Nesta pasta ($WORKSPACE/ext) crie o arquivo app.server.$USER.properties onde, mais uma vez, $USER deve ser substituído pelo seu username na máquina ou, alternativamente, o nome da própria máquina, e com o seguinte conteúdo :
      app.server.parent.dir= $LIFERAY_HOME
      app.server.tomcat.dir=${app.server.parent.dir}/tomcat

      (se estiver instalando um bundle diferente, é preciso consultar os nomes das properties no arquivo app.server.properties).

  • Caso não esteja usando o jikes como compilador, você deve criar o arquivo build.$USER.properties, com o conteúdo:
      javac.compiler=modern
      javac.fork=true
      javac.memoryMaximumSize=256m
  • Ainda na mesma pasta ($WORKSPACE/ext), executem o comando
      ant deploy.
  • Mais uma pausa (esta, menor).

5. Importar o ambiente de desenvolvimento para o eclipse

  • Volte a abrir o eclipse.
  • Importe o projeto ext (File > Import > Other > Existing Folder As New Project). Selecione a pasta $LIDERAY_HOME/ext.
  • Deve ter agora dois projecos no seu workspace – portal e ext.
  • Selecione o projeto ext e acesse as properties.
  • Selecione a tab ‘builders’.

          – Crie um novo builder (botão new).
          – Selecione o Ant Builder.
          – Nas propriedades do builder, indique como buildfile o arquivo build.xml que se encontra na pasta raiz do projeto ext ($WORKSPACE/ext).
          – De volta à tab ‘builder’ desselecione o ‘Java Builder’. O eclipse pede uma confirmação: aceite!

  • Se tiver a opção de ‘auto-build’ do eclipse ativada, o eclipse deve dar inicio à compilação do projeto e? mais uma pausa.

6. Configurar o ambiente de execução

  • Acesse novamente as properties do projeto ext.
  • Selecione a tab ‘Run/Debug Settings’.
  • No quadro ‘Create, manage and run configurations’ selecione a opção ‘Run on Server’ e depois o icon ‘new’.
  • Selecione a configuração ‘tomcat’ (ou outra, dependendo do bundle que você está instalando).
  • Nas propriedades da configuração, selecione a tab Arguments.

          – Substitua o valor dos argumentos

-Djava.endorsed.dirs=${workspace_loc:ext/servers/tomcat/common/endorsed} -Dcatalina.base=${workspace_loc:ext/servers/tomcat}
-Dcatalina.home=${workspace_loc:ext/servers/tomcat} -Djava.io.tmpdir=${workspace_loc:ext/servers/tomcat/temp}

           por

-Djava.endorsed.dirs=${workspace_loc}/../tomcat/common/endorsed -Dcatalina.base=${workspace_loc}/../tomcat
-Dcatalina.home=${workspace_loc}/../tomcat -Djava.io.tmpdir=${workspace_loc}/../tomcat/temp

          – No ‘Working Directory’ indique o path para o diretório ‘bin’ do tomcat ($LIFERAY_HOME/tomcat/bin).

  • Ainda nas propriedades da configuração, selecione a tab Classpath

          – Remova a entrada que está marcada como erro (tools.jar).
          – Adicione o bootstrap.jar do tomcat/bin como jar externo e remova a entrada existente para o mesmo arquivo.

  • Confirme as alterações.
  • Execute o projecto (Run). Você deve ver o output do tomcat sendo levado para a consola do eclipse.

Confirme que tudo está funcionando seguindo os passos indicados no ponto 2. É claro que não precisam de executar o tomcat, o eclipse já tratou disso.

O próximo passo será configurar a base de dados, mas isso ficará para o próximo artigo!