簡體   English   中英

錯誤:Gradle:錯誤:包javax.mail不存在

[英]Error: Gradle: error: package javax.mail does not exist

如何從javamail中獲取.jar文件?

我正在使用intelliJ IDEA IDE並嘗試去項目結構 - 庫 - 添加 - 找到.jar文件並保存。 然后我去模塊並檢查導出下的框,因為我也檢查了用於片段等的支持庫。

我使用了使用JavaMail API在Android中發送電子郵件的代碼, 而沒有使用默認/內置應用程序,但沒有運氣。

我嘗試完整地使用.jar文件以及提取后但都失敗了同樣的錯誤。

我在代碼的編輯模式下沒有收到錯誤,只有在編譯時,gradle構建失敗並向我顯示錯誤,“錯誤(3,6):Gradle:錯誤:包javax.mail不存在。請幫助!

我還嘗試按照說明如何在Android項目中使用外部JAR? 但我認為這些方向與eclipse IDE有關。

edt:gradle-build:

Information:Compilation completed with 25 errors and 0 warnings in 25 sec
Information:25 errors
Information:0 warnings
Error:Gradle: Execution failed for task ':app:compileDebugJava'.

編譯失敗; 請參閱編譯器錯誤輸出以獲取詳細信 C:\\用戶\\馬庫斯\\文件\\ IdeaProjects \\的Android \\ TestProjects \\ TestMailFeature3 \\應用\\ SRC \\主\\的java \\ COM \\ majorwit \\ testmailfeature3 \\應用\\ GMailSender.java

Error:(3, 24) Gradle: error: package javax.activation does not exist

Error:(4, 24) Gradle: error: package javax.activation does not exist

Error:(5, 18) Gradle: error: package javax.mail does not exist

Error:(6, 18) Gradle: error: package javax.mail does not exist

Error:(7, 18) Gradle: error: package javax.mail does not exist

Error:(8, 18) Gradle: error: package javax.mail does not exist

Error:(9, 27) Gradle: error: package javax.mail.internet does not exist

Error:(10, 27) Gradle: error: package javax.mail.internet does not exist

Error:(18, 44) Gradle: error: package javax.mail does not exist

Error:(22, 13) Gradle: error: cannot find symbol class Session

Error:(46, 15) Gradle: error: cannot find symbol class PasswordAuthentication

Error:(67, 49) Gradle: error: cannot find symbol class DataSource    

Error:(43, 19) Gradle: error: cannot find symbol variable Session

Error:(47, 20) Gradle: error: cannot find symbol class PasswordAuthentication

Error:(52, 13) Gradle: error: cannot find symbol class MimeMessage

Error:(52, 39) Gradle: error: cannot find symbol class MimeMessage

Error:(53, 13) Gradle: error: cannot find symbol class DataHandler

Error:(53, 39) Gradle: error: cannot find symbol class DataHandler

Error:(54, 35) Gradle: error: cannot find symbol class InternetAddress

Error:(58, 46) Gradle: error: package Message does not exist

Error:(58, 65) Gradle: error: cannot find symbol variable InternetAddress

Error:(60, 45) Gradle: error: package Message does not exist

Error:(60, 68) Gradle: error: cannot find symbol class InternetAddress

Error:(61, 13) Gradle: error: cannot find symbol variable Transport

javax.activation和javax.mail包不是標准android包的一部分( http://developer.android.com/reference/packages.html )。

幸運的是,Android版本已經發布了JavaMail( https://java.net/projects/javamail/pages/Android )。 我遵循了在Android Studio中為我的項目修改build.gradle文件的建議,並且能夠成功編譯而無需手動下載任何jar文件。

android {
  packagingOptions {
    pickFirst 'META-INF/LICENSE.txt' // picks the JavaMail license file
  }
}
repositories { 
  jcenter()
  maven {
    url "https://maven.java.net/content/groups/public/"
  }
} 
dependencies {
  compile 'com.sun.mail:android-mail:1.5.5'
  compile 'com.sun.mail:android-activation:1.5.5'
}

我將以下內容添加到我的build.gradle(Module:app)文件中,並且編譯時沒有錯誤。

dependencies {
    //other dependencies here...
    compile 'com.sun.mail:android-mail:1.5.5'
    compile 'com.sun.mail:android-activation:1.5.5'
    testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'

一個區別在於我的情況是一個Android項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM