Ben bir Android kütüphane projesini içeren intellij Aşağıdaki dizin yapısı aşağıdaki gibi:IntelliJ'nin kaynakları kaynak derleyicinin çıktı dizinine kopyalamasını nasıl engellerim?
java/com/example/base/AndroidManifest.xml
java/com/example/base/assets # contains Android assets
java/com/example/base/res # contains Android resources
java/com/example/base/Base.java
java/com/example/base/base.iml
base.iml
aşağıdakileri içerir:
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$"
isTestSource="false"
packagePrefix="com.example.base" />
<sourceFolder url="file://$MODULE_DIR$/gen" isTestSource="false" />
<excludeFolder url="file://$MODULE_DIR$/res" />
</content>
Kitaplığıma bağlıdır bir Android uygulama projesi oluştururken Proje sTRU yılında
[myapp] java.util.zip.ZipException: duplicate entry: res/drawable/image_shadow.9.png
: Proje, bir hata alıyorum çağırma iletişim kutusu, proje derleyici çıktısı projemizin kökü altında bir out
dizini olarak yapılandırıldı. Android projemi oluşturmaya çalışırken, Android kaynaklarının kopyalarının out/production/base/com/example/base/res/
klasörünün altında olduğunu fark ettim.
Varsayımım benim Android kaynaklar onlar da ben duplicate entry
duruma neden olur out/production
, kopyalanacak olan neden olan, (tip Class.getResource()
kullanarak yük olurdu) "normal" Java kaynakları gibi muamele ediliyor olmasıdır görme.
Bu durumun bir fikri var mı? Öyleyse, bu dosyaların kopyalanmasını nasıl engelleyebilirim? Eclipse'de, .classpath
dosyasındaki <classpathentry>
öğesinde, bu tür davranışları önlemek için bir glob örüntüsü alan bir excluding
özniteliği vardır.
Karanlıkta bir çekim olarak ' öğesini denediğimi eklemeliyim.Bunu gerektiren herhangi bir çözüm, istenmeyen bir şeydir, çünkü bu 'res' klasörünü IntelliJ'ın UI'sindeki kaynak ağacından gizler. Klasörün görünürlüğünden değil, derleme için dikkate alınmasını engellemek istiyorum. –
bolinfest
Sorun Android Faset ayarlarınızda olabilir, muhtemelen yanlış dizin burada "res" olarak yapılandırılmıştır. '.iml' dosyaları olmadan daha fazla söyleyemem. "=
CrazyCoder
benim faset standart klişe sahip olduğuna inanıyorum/res "/> configuration> Bu yüzden tüm şeyi yapıştırmama izin vermiyor. PaketPrefix ve Android kütüphane projeleriyle bu etkileşimin daha önce test edilip edilmediğini merak ediyorum. – bolinfest