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!