2014-05-06 64 views
1

我有一個Android Studio項目構建並運行得很好,但在Android Studio編輯器中,我的所有代碼都依賴於jar文件,顯示爲它具有編譯器錯誤。下面是截圖: enter image description here如何讓Android Studio識別我的庫模塊的jar文件?

我的項目的結構

Project 
- AndroidApp 
- AndroidLibrary 
    - build 
    - libs 
    - acra-4.5.0.jar 
    - activation.jar 
    - (More jar files) 
    - src 
    - (library source code) 

而這裏的圖書館的build.gradle內容:

apply plugin: 'android-library' 

android { 
    compileSdkVersion 19 
    buildToolsVersion '19.0.1' 

    defaultConfig { 
     minSdkVersion 14 
     targetSdkVersion 16 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      runProguard false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
     } 
    } 
} 

dependencies { 
    compile 'com.android.support:appcompat-v7:+' 
    compile files('libs/acra-4.5.0.jar') 
    compile files('libs/activation.jar') 
    compile files('libs/additionnal.jar') 
    compile files('libs/guava-14.0.1.jar') 
    compile files('libs/mail.jar') 
    compile files('libs/robotium-solo-5.0.1.jar') 
} 

我idea.log看到的唯一錯誤是這樣的

2014-05-06 11:45:08,102 [2933958] INFO - ellij.vfs.persistent.FSRecords - Creating VFS corruption marker; Trace= 
java.lang.Exception 
    at com.intellij.openapi.vfs.newvfs.persistent.FSRecords$DbConnection.createBrokenMarkerFile(FSRecords.java:193) 
    at com.intellij.openapi.vfs.newvfs.persistent.FSRecords$DbConnection.access$2700(FSRecords.java:136) 
    at com.intellij.openapi.vfs.newvfs.persistent.FSRecords.invalidateCaches(FSRecords.java:1613) 
    at com.intellij.ide.actions.InvalidateCachesAction.actionPerformed(InvalidateCachesAction.java:65) 
    at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAware(ActionUtil.java:164) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter$1.run(ActionMenuItem.java:266) 
    at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:924) 
    at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:124) 
    at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:236) 

我該如何製作Android Studio能識別我的jar文件嗎?其他疑難解答提示?

+1

當您嘗試構建&運行時,它是否在Android Studio中不工作? 你也可以試試這個,而不是編譯fileTree(dir:'libs',include:['* .jar'])? –

+0

您是否試圖使緩存無效(「文件 - >無效緩存」並重新啓動)或與gradle同步? – Salem

+0

我可以從Android Studio構建和運行。沒有生成錯誤,應用程序運行。只有在我看到問題的編輯器中。編譯fileTree語句時出現同樣的錯誤。 –

回答

0

我通過創建一個新的Java庫模塊解決了這個問題,並將所有的第三方JAR放在那裏。我沒有在該模塊中添加我自己的任何Java代碼。然後,我使我的Android庫模塊依賴於模塊。我的新項目結構是

Project 
- AndroidApp 
- AndroidLibrary 
    - build 
    - src 
    - (library source code) 
- Java Library 
    - libs 
    - acra-4.5.0.jar 
    - activation.jar 
    - (More jar files) 
相關問題