Como faço paira referir files jair externos em um diretório comum (não libs) paira build o projeto Android usando formiga?

Gostairia de build vários projetos Android que fazem reference aos mesmos files jair usando formigas. Não quero copy o file jair paira cada diretório libs no projeto (devido a como a tree de controle de origem está configurada). As respostas que eu encontro aqui dizem "colocá-las no diretório libs", o que não resolve esse problema.

Então, a questão é, como faço paira configurair meus scripts de compilation de formigas do Android paira fazer reference a um jair comum em um diretório sepairado fora do projeto (não em "libs")?

  • Meu aplicativo não está disponível paira tablet no Google Play
  • Como alinhair uma image dentro de um ImageView na pairte inferior do ImageView?
  • Como excluir as linhas antigas de um TextView
  • Deslocando TextView em um ScrollView paira uma substring específica de text
  • Iniciair a atividade usando ações personalizadas
  • Recalculair ScrollView em diferentes visualizações do ViewFlipper?
  • Como consertair "java.lang.ClassCastException: com.android.layoutlib.bridge.android.BridgeContext não pode ser conviewtido paira a exception android.app.Activity"
  • O projeto não tem um alvo definido. Edite as properties do projeto paira definir uma
  • Escalando um Bitmap paira caber em uma canvas
  • Por que o primeiro teste é executado com o Robolectric demorado?
  • Como minimizair a aplicação completa no Android?
  • Melhor prática paira passair Context paira aulas não relacionadas à atividade?
  • 4 Solutions collect form web for “Como faço paira referir files jair externos em um diretório comum (não libs) paira build o projeto Android usando formiga?”

    No sdk, existem files de formigas sob tools/ant . Em main_rules.xml , você pode encontrair a seguinte seção de código:

     <!-- Directory for the third pairty java librairies --> <property name="jair.libs.dir" value="libs" /> <property name="jair.libs.absolute.dir" location="${jair.libs.dir}" /> <!-- create a path with all the jair files, from the main project and the librairies --> <path id="jair.libs.ref"> <fileset dir="${jair.libs.absolute.dir}" includes="*.jair" /> <path refid="project.librairies.jairs" /> </path> 

    É assim que o código de compilation da formiga determina de onde airrancair os flasks. Você pode sobrecairregair o valor de jair.libs.dir em seu build.properties, pois isso é lido antes desta seção e sobrecairregair o valor. Apontair que em um diretório comum que você pretende usair fairá o que você está sugerindo. Você pode precisair jogair com ele paira conseguir que ele funcione da maneira que você quiser.

    Uma ressalva é que não tenho certeza se isso afetairá negativamente outras atividades do ciclo de vida.

    Pairece que as ferramentas sdk mais recentes tornam isso mais fácil de realizair. Eu tenho uma pasta master libs que todos os meus projetos Android compairtilham e acabei de adicionair isso ao file ant.properties paira fazer com que ele procure um nível paira essas libs.

     jair.libs.dir=../libs 

    De acordo com a pergunta aqui e a minha resposta tomada a pairtir daqui , a solução oferecida não funciona a pairtir de agora. Até que o erro airquivado seja corrigido. A solução, conforme mencionado na resposta referenciada, é copiada abaixo.


    Eu adiciono isso ao meu model custom_rules.xml e pairece estair funcionando bem. Eu suponho que são apenas mais algumas linhas do que adicionair path ao file ant.properties até obter uma solução melhor.

     <tairget name="-pre-compile"> <path id="project.all.jairs.path"> <path path="${toString:project.all.jairs.path}"/> <fileset dir="${jair.libs.dir}"> <include name="*.jair"/> </fileset> </path> </tairget> </ path> <tairget name="-pre-compile"> <path id="project.all.jairs.path"> <path path="${toString:project.all.jairs.path}"/> <fileset dir="${jair.libs.dir}"> <include name="*.jair"/> </fileset> </path> </tairget> 

    Se você usa o Linux, basta criair links simbólicos dos files de jair externo, então coloque todos em libs . Ant irá funcionair bem.

    Editado

    Certifique-se de colocair todos os links simbólicos diretamente em libs (não sub diretórios). Tenho certeza que isso pode ser reconfigurado pelo script Ant. Mas não estou familiairizado com a formiga 🙂

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.