Hi, > davmail fails to work correctly with latest java-9-openjdk in Debian > unstable. > > Fetching and sending messages fails with an exception trace: > > Exception in thread "ImapConnection-51322" java.lang.NoClassDefFoundError: > javax/activation/DataHandler > at > davmail.exchange.ExchangeSession$Message.loadMimeMessage(ExchangeSession.java:2018) > at > davmail.exchange.MessageLoadThread.loadMimeMessage(MessageLoadThread.java:52) > at > davmail.imap.ImapConnection$MessageWrapper.loadMessage(ImapConnection.java:800) > at > davmail.imap.ImapConnection$MessageWrapper.getMimeMessageSize(ImapConnection.java:786) > at davmail.imap.ImapConnection.handleFetch(ImapConnection.java:847) > at davmail.imap.ImapConnection.run(ImapConnection.java:399) > Caused by: java.lang.ClassNotFoundException: javax.activation.DataHandler > at > java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) > at > java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:185) > at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:496) > ... 6 more
This seems to be a CLASSPATH issue due to the new dependency on javax.activation of javax.mail. I do not know enough about java library jar good practices to know if the classpath should be set in mail.jar or explicitly in davmail.jar though (as it is not davmail that depends on activation.jar but mail.jar). The following patch (or built package at https://sml.zincube.net/~niol/tmp/davmail_4.8.3.2554-2+test894689+1_amd64.changes ) may fix the problem by adding activation.jar in davmail.jar's classpath: --- a/debian/patches/0004-Set-classpath-add-target-davmail-lib.patch +++ b/debian/patches/0004-Set-classpath-add-target-davmail-lib.patch @@ -8,9 +8,9 @@ Subject: Set classpath, add target davmail-lib Index: davmail.git/build.xml =================================================================== ---- davmail.git.orig/build.xml -+++ davmail.git/build.xml -@@ -3,13 +3,20 @@ +--- davmail.git.orig/build.xml 2018-04-03 11:30:05.032340443 +0200 ++++ davmail.git/build.xml 2018-04-03 11:30:31.336772113 +0200 +@@ -3,13 +3,21 @@ <property name="version" value="4.8.3"/> <path id="classpath"> @@ -27,6 +27,7 @@ Index: davmail.git/build.xml + <pathelement location="${commons-logging}" /> + <pathelement location="${htmlcleaner}" /> + <pathelement location="${mail}" /> ++ <pathelement location="${activation}" />^M + <pathelement location="${jcifs}" /> + <pathelement location="${jackrabbit-webdav}" /> + <pathelement location="${woodstox-core}" /> @@ -38,7 +39,7 @@ Index: davmail.git/build.xml </path> <target name="clean"> -@@ -286,28 +293,7 @@ +@@ -286,28 +294,7 @@ <mkdir dir="dist"/> <property name="release-name" value="${release}-trunk"/> <pathconvert property="manifest-classpath" pathsep=" "> Thanks for reporting, Alex