Clone wiki

iDempiereLBR / Passo a Passo Configuração do iDempiere e iDempiereLBR no eclipse Windows Completo

Com o intuito de ajudar a comunidade, estou criando esse manual de configuração do iDempiere no eclipse Windows.

Passo a Passo, para ficar bem fácil de entender, por que eu passei 3 dias tentando instalar e também não havia conseguido.

Antes de começar uma recomendação

LEIA ATENTAMENTE CADA PASSO

Então vamos lá.

  1. Caso tenha o java 8 instalado, desinstale todas as versões JDK e JRE. Pois a versão do iDempiere usada no projeto suporta somente até a versão 7 do java.
  2. Baixe o JDK do java 7 no link JDK 7
  3. Baixe o 7z ou Winrar. Ele será usado para descompactar o commit que vem como tar.gz
  4. Baixe o commit do iDempiere indicado no home do projeto ae6dc71
  5. Baixe o TortoiseHG
  6. Crie uma pasta Específica para o projeto iDempiere essa pasta será o seu Workspace do eclipse (D:\Projetos Novos\iDempiere\iDempiere).
  7. Baixe o Eclipse Luna ele será usado para o desenvolvimento do projeto
  8. Baixe o postgress 9.2
  9. Baixe o NotePad++
  10. Baixe o Cygwin (Ele irá facilitar a nossa vida)

Algo parecido com isso.

Imagem1.png

Com Tudo pronto vamos começar a brincadeira.

Descompacte o commit baixado dentro da pasta criada Ex: "D:\Projetos Novos\iDempiere\iDempiere".

Vai ficar assim.

Imagem2.png

Apagar o arquivo "idempiere-idempiere-historic-ae6dc7128a83.tar.gz" e Retirar o conteudo da pasta "idempiere-idempiere-historic-ae6dc7128a83", para deixar somente dentro da pasta "D:\Projetos Novos\iDempiere\iDempiere". Que vai ficar assim.

Imagem2.png

Vamos apagar a pasta "idempiere-idempiere-historic-ae6dc7128a83", para deixar tudo certo.

Vamos criar também uma nova pasta chamada "TargetPlatform" (sem aspas) nós a usaremos mais a frente.

Abrir o eclipse. Eu estou usando a versão Luna. E vamos mudar ao Workspace para a pasta que criamos. Imagem 3.png

Imagem 3.png

O eclipse irá reiniciar e abrir com esse novo Workspace.

Agora vamos importar os projetos do iDempiere.

Imagem4.png

Imagem5.png

Imagem6.png

Nosso projeto ficará assim

Imagem7.png

Note que existe vários erros. Vamos corrigi-los agora.

Vamos baixar o plugin do mercurial no eclipse.

Para isso acessamos o Eclipse Marketplace

Imagem8.png

Na nova tela que abrir digite "Mercurial Eclipse" (sem aspas)

E vai aparecer algo assim. (No meu caso já está instalado, mas basta clicar em instalar)

Imagem9.png

Após a instalação precisaremos apontar onde está o "hg", que é o aplicativo usado para clonar diretórios. Para isso vá em Window -> Preferences (No meu caso eu havia instalado o mercurial stand Alone.) Mas você poderá encontrar o HG dentro da pasta do Tortoise HG. Algo Assim C:\Program Files\TortoiseHg\hg.exe

Imagem10.png

No campo de pesquisa digite "Mercurial" (sem aspas) E aponte o arquivo hg, que estará dentro da pasta do TortoiseHg Algo assim

Imagem11.png

Pronto o mercurial está configurado.

Agora iremos instalar outro plugin do eclipse o Buckminster

Para isso vamos em Help > Install New Software > Add

Imagem12.png

Imagem13.png

Abrirá outra tela. Em Name digite: Buckminster

Em Location digite: http://download.eclipse.org/tools/buckminster/updates-4.4

Clique em ok.

Isso fechará essa tela e retornará para a tela anterior.

Onde no combobox, agora haverá um novo item.

Imagem14.png

Selecione o Buckminster

ele irá listar os itens disponíveis a serem instalados.

Instale somente

Buckminster - Core

Buckminster - Maven support

Buckminster - PDE support

Após tudo instalado é hora de começar a fazer a mágica acontecer.

Para não termos problemas, vamos primeiro criar um novo TargetPlatform.

Para isso vamos em Para isso vá em Window -> Preferences

No campo de busca digite "Target Platform" (sem aspas)

Aparecerá algo assim

Imagem15.png

Clique em ADD

Deixe marcado a primeira opção

Imagem16.png

Clique em next

Imagem18.png

Em name digite: "iDempiere Target Platform" ou o nome que desejar.

Na própria aba Location clique em Add

Selecione directory

Imagem17.png

Na tela que abrir clique em "Variables" e selecione "workspace_loc".

Lembram daquela pasta que eu falei para criar, agora é a hora dela :)

Deixe o location assim : "${workspace_loc}\TargetPlatform" (sem aspas).

Clique em Finish

Ficará assim

Imagem19.png

Agora vamos clicar na Tab "Environment"

Vamos deixar assim

Imagem20.png

Clique em Finish

Na tela anterior selecione o novo target Platform criado, clique em Apply e depois em OK

Imagem21.png

Pronto agora chegamos a metade do Manual (rs rs)

Agora vamos materializar o projeto.

O que é isso ? (Eu também não sei, só sei que tem que fazer).

Então vamos lá

Clique em File -> Import.

Na pesquisa digite Buckminster

e selecione Materialize from ...

Algo assim

Imagem22.png

Na proxima tela clique em Browse...

E selecione o arquivo "adempiere.mspec".

Ele se encontra dentro da pasta "org.adempiere.sdk-feature"

Imagem23.png

Clique em OK.

E vá fazer um café, por que aqui vai demorar um pouco

Ele irá baixar todos os Plugins que o projeto precisa

Imagem24.png

Depois que ele acabar de baixar tudo, vamos verificar se está tudo certo.

Clique em "Unresolve Node".

Se aparecer algum ponto vermelho clique em "Re-resolve"

Faça isso até quando ao clicar em "Unresolve Node" não apareça nenhum ponto vermelho.

Algo assim

Imagem25.png

Pronto agora clique em Finish.

E ele irá copiar tudo que foi baixado para dentro da pasta "TargetPlatform"

Aguarde ele finalizar o processo.

Outra boa hora para se tomar outra xícara de café.(demora um pouco, e olha que eu estou com um i7 com 16gb de memória...)

Ufa acabou ... (de processar, o manual ainda continua..)

Vamos dar um clear e rebuld no projeto.

Para isso vamos em Project -> Clean

Imagem26.png Imagem27.png

Nosso projeto ficará assim

Imagem28.png

É agora que você pergunta. agora acabou não é ?? Eu digo. Não

Existem vários erros ainda, não viu ??

Vamos corrigi-los

Para isso vou ensinar os famosos Jump's of the cat (Pulos do gato)

Vamos dar um close project na pasta "doc", isso já deve corrigir alguns erros.

Imagem29.png

Com isso os erros irão desaparecer. (Olha que maravilha)

Imagem30.png

E você novamente pergunta.

Agora acabou não é ???

Não cara! calma, está estressado ??

Agora vamos fazer essa parada rodar "Na Moral".

Vá em Run -> Debug Configuration.. ou Run Configurations

Imagem31.png

Você verá que existe um node chamado Eclipse Application.

Logo abaixo tem Install.app. Clica nele.

Ao lado vai aparecer várias opções clique em Plug-ins

Imagem32.png

Depois clique em "Add Required Plug-ins"

Ele irá adicionar todos os plugins necessários automáticamente.

Depois clique em "Validate Plug-ins".

Deverá aparecer essa mensagem

Imagem33.png

Se por ventura aparecer essa mensagem

Imagem34.png

É simples de resolver.

Clique em ok, para fechar a janela e digite no filter linux.

**Você verá que o plugin está marcado.

Basta desmarca-lo

Imagem35.png

Ele deverá ficar assim

Imagem36.png

Repita os mesmos passos para todos os sub-nodes do projeto.

Imagem37.png

Depois é só clicar em "Debug ou Run" e ser feliz.

Agora essa Etapa acabou !! Até que enfim ...

Agora vamos instalar os plugins LBR (Sem eles não tem graça não é ?)

Primeiro vamos clonar o código

Aqui na página ao lado <--- existe uma opção Clone, ao clicar irá aparecer a opção que indicará o endereço do repositório que iremos usar no Tortoise HG.

Antes disso vamos criar uma nova pasta chamada "iDempiereLBR". Essa pasta ficará fora da pasta do Workspace iDempiere, para que possamos importa-los depois. O caminho da pasta ficará mais ou menos assim

D:\Projetos Novos\iDempiere\iDempiereLBR

Nossa árvore de pastas ficará assim

Imagen1.png

Feito ?

Ótimo, agora vamos clonar o diretório

Imagen2.png

O Tortoise irá perguntar sobre o endereço de origem, copie o que foi lhe mostrado na pagina ao lado e apague a parte do "hg clone" deixando somente "https://SeuId@bitbucket.org/idempierelbr/idempierelbr" e clique em "Clonar"

Imagen3.png

Espere baixar todo o projeto e feche a janela que irá abrir após a conclusão.

Nossa pasta deverá estar assim

Imagen4.png

Tudo certo ?

Show

Agora vamos voltar ao eclipse e importar essa estrutura de projeto para nosso workspace.

Imagen5.png

Note que agora as pastas dos plugins lbr já estão no sua árvore do eclipse

Imagen6.png

Agora vamos ativar essa parada.

Vá em Run - > Bebug ou Run Configurations...

Imagen7.png

Aí você pergunta.

Ué ! Cade os plugins que eu importei que não estão aparecendo aqui ?????

Imagen8.png

E eu te respondo, CALMA esse são plugins e não aplicações por isso eles não irão aparecer nessa lista.

Vamos ativa-los da seguite forma.

Clique em "server.product" de depois na aba Plug-ins no campo de filtro digite "lbr" para facilitar a nossa vida.

Pronto !

Você deverá estar vendo toda a lista de plugins lbr desmarcada. Basta Marca-los.

Deixando assim.

NOTA: Perceba que alguns plugins estão como "Auto Start" como True;

Deverá ficar assim

Imagen9.png

Clique em Imagen10.png

Se aparecer o erro do linux que eu comentei ali em cima, basta demarcar.

Pronto agora acabou !! *Mais essa etapa.

Vamos passar para o banco de dados *

Com o postgress já instalado vamos abrir o prompt de comando.

vamos navegar até a pasta "C:\Program Files\PostgreSQL\9.2\bin"

Pra quem não se lembra do Glorioso DOS.

Aperte a tecla Windows e digite "cmd"

e depois "cd C:\Program Files\PostgreSQL\9.2\bin"

Agora digite:

psql -U postgres -c "CREATE ROLE adempiere SUPERUSER LOGIN PASSWORD 'adempiere'"

(Troque a senha pois essa senha que eu deixei é bem óbvia) (Melhor copiar e colar rs)

Ele irá solicitar a senha do usuário postgres é aquela senha que você digitou quando estava instalando o banco de dados, lembra ?

Depois da senha digitada (corretamente) a Role (usuário) será criada !

Agora vamos criar nosso banco de dados, digite

createdb  --template=template0 -E UNICODE -O adempiere -U adempiere idempiere

Ele irá solicitar a senha, agora é a senha que você cadastrou para o usuário "adempiere" que na linha anterior você alterou para a senha de seu gosto.

Imagen12.png

Show !! Banco de dados foi criado

Agora vamos digitar o próximo comando para alterar a Role

psql -d idempiere -U adempiere -c "ALTER ROLE adempiere SET search_path TO adempiere, pg_catalog"

Próximo passo importar a Seed (semente) do nosso banco de dados.

(Não feche o DOS)

Para isso vá a pasta ../org.adempiere.server-feature/data/seed

Que para nosso exemplo é

"D:\Projetos Novos\iDempiere\iDempiere\org.adempiere.server-feature\data\seed"

Copie o arquivo

"Adempiere_pg.jar"

para uma pasta qualquer, para não bagunçar nosso projeto.

Algo como "D:\SementeIdempiere" e usando o 7z extraia o arquivo "Adempiere_pg.jar".

Ele irá gerar um arquivo chamado "Adempiere_pg.dmp"

vamos usar ele agora mesmo.

Voltando ao DOS, que você deixou aberto por que é esperto.

digitaremos o seguinte comando

psql -d idempiere -U adempiere -f D:\SementeIdempiere\Adempiere_pg.dmp

Ele irá solicitar a senha, agora é a senha que você cadastrou para o usuário "adempiere" que mais acima você alterou para a senha de seu gosto.

E ele irá iniciar a importação

Imagen13.png

Depois da importação finalizada agora temos que importar os scripts para os plugins LBR.

Eles estarão na pasta

"D:\Projetos Novos\iDempiere\iDempiereLBR\org.idempierelbr.core\migration\i2.0\postgresql"

Seguindo nosso exemplo...

Vamos nas variaveis de ambiente do Windows e vamos setar o Path, para apontar para o "psql.exe"

Imagen16.png

Duplo clique em cima de Path e ao final da linha adicione;

;C:\Program Files\PostgreSQL\9.2\bin;

Vamos abrir o "Cygwin" Ele está em "C:\cygwin64" é um arquivo igual a um batch

Imagen14.png

Vamos criar algumas pastas para não precisar alterar nada no script de importação dos plugins lbr

Dentro da pasta do Cygwin temos uma pasta chamada "tmp"

entre nessa pasta e crie uma pasta chamada "migrationLBR"

e dentro da pasta "migrationLBR" crie uma pasta chamada "core"

Nosso diretório ficará assim "C:\cygwin64\tmp\migrationLBR\core"

Vamos copiar todos os arquivos e pastas de dentro da pasta "migration" dos plugins lbr. O diretório é "D:\Projetos Novos\iDempiere\iDempiereLBR\org.idempierelbr.core\migration"

Se você está seguindo a risca o exemplo, se não, ache essa pasta onde você a criou.

copie todos os arquivos para a pasta "core" (C:\cygwin64\tmp\migrationLBR\core) ficando assim.

Imagen15.png

Vamos alterar o arquivo

"syncApplied-LBR-core-i2.0-pg.sh"

para apontar para os locais corretos do nosso computador

Iremos alterar a linha

ADDPG="-h idempiere -p 5432"

Para

ADDPG="-h localhost -p 5432"

(Onde localhost poderá ser o ip da maquina onde está instalado o banco de dados)

Agora vamos no terminal do Cygwin e digitaremos

cd /tmp/migrationLBR/core

Dê enter para ele entrar na pasta

depois digite

sh syncApplied-LBR-core-i2.0-pg.sh

Ele irá solicitar várias e várias vezes a senha do usuário "adempiere", como lembrar não faz mau a ninguém. Então agora é a senha que você cadastrou para o usuário "adempiere" que mais acima você alterou para a senha de seu gosto.

Vá digitando quantas vezes ele mandar, você verá que os arquivos estão sendo importados um a um.

Imagen17.png

Updated