作者uok (惡意放水算不算troll?)
看板java
標題[問題] Ant找不到我的R檔0.o?!
時間Thu Feb 23 10:20:12 2012
事情是這樣的
最近因為工作需求
需要大量的包版給客戶
在查詢之後找到了ant這個軟體
一番研究之後終於安裝成功
也寫出了很克難的腳本
但是編譯之後卻跳出大量錯誤訊息
錯誤訊息如下:
[javac] C:\Android_CHT\src\AlertSettingExpandableListAdapter.java:12:
cannot find symbol
[javac] symbol : class R
[javac] location: package com.cap
[javac] import com.cap.R;
其原因是因為他找不到我原本就存在在專案內的R檔
可是r檔這種東西不是自動生成的嗎?
要怎麼自行匯入呢??
又因為我們公司的專案有匯入第三方的jar
結果導致R檔有兩個
一個是library的R檔
一個是原專案內的R檔
這又該怎麼處理?
--
我的猜想是,雲端技術就像當年的網際網路
所有的人都要讚美它
所有的廠商都要支援它
所有的專案經理都要擁抱它
所有的工程師都要實踐它
但是,就是
沒有人知道什麼是雲端技術....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.163.25.228
※ uok:轉錄至看板 Eclipse 02/23 10:23
※ 編輯: uok 來自: 118.163.25.228 (02/23 10:36)
1F:→ qrtt1:為何要用同樣的 package !? 02/23 10:53
2F:→ uok:也不算放同一個裡面啦,只是ECLIPSE會自動把第三方JAR的R.java 02/23 11:11
3F:→ uok:在匯入時一起放到GEN底下 02/23 11:13
4F:→ Killercat:只有我覺得這個根本是android的嗎 = =a? 02/23 13:40
5F:→ uok:是ANDROID也是ANT也是ECLIPSE同時也是JAVA 02/23 13:46
6F:→ Killercat:那是aapt幫你處理的,另外,有專版androiddev喔 02/23 14:54
7F:→ uok:我在猜想到了ANDROIDDEV板後叫我去ECLIPSE版的機率是多少... 02/23 15:18
8F:→ uok:無論如何感謝回答,但是我還是想請問AAPT需要做什麼設定 02/23 15:34
9F:→ uok:那不是只是個EXE檔嗎? 02/23 15:42
10F:→ Killercat:adt會跑一系列動作把它包成aapt, 正確是用adt去跑才對 02/23 18:17
12F:→ Killercat:*堅持不用* 怎麼今天老打錯字 02/23 18:20
14F:→ Killercat:另外R檔產生是來自於aapt 02/23 18:23
15F:→ uok:這就是我最不解的地方,既然產生好了自己的R檔 02/23 18:35
16F:→ uok:為什麼不能使用產生好的R檔,還是這要自己去設置路徑? 02/23 18:37
我現在編譯的console如下:
Buildfile: C:\Users\UOK143\and_work\Android_CHT\build.xml
init:
[echo] Creating all output directories
[delete] Deleting directory C:\Users\UOK143\and_work\Android_CHT\bin
[delete] Deleting directory C:\Users\UOK143\and_work\Android_CHT\gen
[mkdir] Created dir: C:\Users\UOK143\and_work\Android_CHT\bin
[mkdir] Created dir: C:\Users\UOK143\and_work\Android_CHT\bin\classes
[mkdir] Created dir: C:\Users\UOK143\and_work\Android_CHT\gen
resource-src:
[echo] Generating R.java...
aidl:
[echo] Compiling aidl files into Java classes...
compile:
[javac] Compiling 316 source files to C:\Users\UOK143\and_work\Android_CHT\bin\classes
[javac] C:\Users\UOK143\and_work\Android_CHT\src\com\mitake\finance\Middle.java:68: cannot find symbol
[javac] symbol : class R
[javac] location: package com.mitake.m2a.cap
[javac] import com.mitake.m2a.cap.R;
[javac] ^
[javac] C:\Users\UOK143\and_work\Android_CHT\src\com\bot\MyMitake.java:10: cannot find symbol
[javac] symbol : class R
[javac] location: package com.mitake.m2a.cap
[javac] import com.mitake.m2a.cap.R;
[javac] ^
[javac] C:\Users\UOK143\and_work\Android_CHT\src\com\mitake\object\MyMitakeZero.java:21: cannot find symbol
[javac] symbol : class R
[javac] location: package com.mitake.m2a.cap
[javac] import com.mitake.m2a.cap.R;
看他的樣子
R.java不是已經出來了嗎?
為什麼又不見了?
還是這要在compile中設置路徑呢??
※ 編輯: uok 來自: 118.163.25.228 (02/23 18:40)
17F:推 swpoker:感覺妳是編譯了R可是卻沒有制定該R的路徑 02/24 09:38
18F:→ swpoker:不對~你在javac的classpath有指定該R的路徑嗎 02/24 09:40
19F:→ uok:這點我有想過,後來加了之後結果一樣 02/24 10:12