Sim, e não usar a disponibilizada pelo .jar do SDK. []'s -- Atenciosamente, Pergentino Araújo. Arquiteto Java/Flex Doutorando Engenharia Elétrica UnB Currículo Lattes: http://lattes.cnpq.br/3092110184317060
2010/9/2 Daniel Rodrigues da Cunha Frank <[email protected]> > Pergentino, bom dia. > > A solução para o consumo excessivo de memória foi alterar sua task de mxmlc > (Flex Ant Task) para exec? > > Att., > Daniel R.C.Frank > Análise e Programação > > > Em 2 de setembro de 2010 00:28, Pergentino Araújo > <[email protected]>escreveu: > >> Vou dormir feliz! >> >> Só para compartilhar, existe a possibilidade de chamar diretamente o >> mxmlc.exe via ant, passando os argumentos como parâmetro para a chamada. >> >> Fica meio feio a organização do target, mas esta foi a melhor forma e mais >> performática que achei e, para a falta de documentação em relação ao >> ANTFLEX, fica mais fácil de você aplicar os parâmetros normais de >> compilação<http://www.docsultant.com/site2/articles/flex_cmd.html#mxmlc_3_syntax> >> . >> >> Ahh, a memória que antes chegava a 1Gb, agora não passa de 100 e o tempo >> que antes era de 6 minutos, agora é de 1 minuto. :) >> >> Para os interessados, segue trecho em anexo. >> >> P.S.1: Para quem quer ainda mais desempenho, existe como você executar em >> paralelo várias compilações, para se aprofundar, busquem algo como >> "<parallel threadcount="4">" no Google. >> P.S.2: Ajustem o trecho para as suas necessidades, este trecho é o básico. >> >> Abraços. >> >> <target name="build-module" description="Compilação de módulos >> passados como parâmetros"> >> <exec executable="${mxmlc}"> >> <arg line="-benchmark=true" /> >> <arg line="-keep-generated-actionscript=false" /> >> <arg line="-debug=false" /> >> <arg line="-context-root=meucontexto" /> >> <arg line="-output=${modulo}.swf" /> >> <arg line="-incremental=true" /> >> <arg line="-services=services-config.xml" /> >> <arg line="-load-externs=xmlGerado.xml" /> >> <arg line="-load-config=flex-config.xml" /> >> <arg line="-compiler.source-path=src" /> >> <arg >> line="-compiler.external-library-path=${FLEX_HOME}/frameworks/libs/player/9/" >> /> >> <arg >> line="-compiler.library-path+=${FLEX_HOME}/frameworks/libs" /> >> <arg line="" /> >> <arg line="-- ${src.modulos.dir}/${modulo}.as" /> >> </exec> >> </target> >> >> >> >> >> -- >> Atenciosamente, Pergentino Araújo. >> Arquiteto Java/Flex >> Doutorando Engenharia Elétrica UnB >> Currículo Lattes: http://lattes.cnpq.br/3092110184317060 >> >> >> 2010/9/1 Pergentino Araújo <[email protected]> >> >> Pessoal, >>> >>> estou em busca da solução perfeita para compilação "em massa" de módulos, >>> onde no momento possuo mais de 30 e isto tem gerado dois grandes problemas: >>> 1. Tempo de compilação >>> 2. Memória utilizada >>> >>> Para solucionar a 1a situação, faço uso do parâmetro incremental, >>> setando-o como true, porém o 2o problema está me tirando a paciência. >>> >>> A forma mais válida que achei até hoje é criar uma target que recebe como >>> parâmetro o nome do módulo e, desta forma, posso criar uma target que faz >>> antcall's, semelhante a apresentada abaixo: >>> >>> <target name="build-modules"> >>> <antcall target="build-module"> >>> <param name="modulo" value="CadastroAtividade"/> >>> </antcall> >>> ... >>> ... >>> </target> >>> >>> Percebi que, quando passo pra compilação do 11º módulo, o tempo de >>> compilação aumente e, consequentemente a sua memória. Neste momento, a >>> memória está passando de 1GB e isto não cheira bem. >>> >>> Para entender como funciona de fato "por baixo dos panos", adicionei o >>> parâmetro "-debug" na execução do ant e percebi que toda vez que eu chamo >>> uma antcall, ele não reutiliza o que já foi carregado para a memória, >>> adicionando tudo de novo. Seria basicamente chamar outra vez o ant que sai >>> engordando a memória. >>> >>> Será que existe alguma solução ou terei de apelar pra, toda vez, sair >>> comentando o build.xml, retirando os "antcalls" ? >>> >>> -- >>> Atenciosamente, Pergentino Araújo. >>> >> >> -- >> Você recebeu esta mensagem porque está inscrito na lista "flexdev" >> Para enviar uma mensagem, envie um e-mail para [email protected] >> Para sair da lista, envie um email em branco para >> [email protected] >> Mais opções estão disponíveis em http://groups.google.com/group/flexdev >> > > -- > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > Para enviar uma mensagem, envie um e-mail para [email protected] > Para sair da lista, envie um email em branco para > [email protected] > Mais opções estão disponíveis em http://groups.google.com/group/flexdev > -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para [email protected] Para sair da lista, envie um email em branco para [email protected] Mais opções estão disponíveis em http://groups.google.com/group/flexdev
