[英]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.