最近很多小伙伴都在问Gradle项目:java.lang.NoClassDefFoundError:kotlin/jvm/internal/Intrinsics和gradle项目结构这两个问题,那么本
最近很多小伙伴都在问Gradle项目:java.lang.NoClassDefFoundError:kotlin / jvm / internal / Intrinsics和gradle项目结构这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展android – java.lang.NoClassDefFoundError:失败的解析:Lio / realm / internal / SharedRealm $Durability、Eclipse:java.lang.NoClassDefFoundError:javax / activation / DataHandler、Error:java: Internal compiler error: java.lang.Exception: java.lang.NoClassDefFoundError 解决、exception java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment等相关知识,下面开始了哦!
本文目录一览:- Gradle项目:java.lang.NoClassDefFoundError:kotlin / jvm / internal / Intrinsics(gradle项目结构)
- android – java.lang.NoClassDefFoundError:失败的解析:Lio / realm / internal / SharedRealm $Durability
- Eclipse:java.lang.NoClassDefFoundError:javax / activation / DataHandler
- Error:java: Internal compiler error: java.lang.Exception: java.lang.NoClassDefFoundError 解决
- exception java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
Gradle项目:java.lang.NoClassDefFoundError:kotlin / jvm / internal / Intrinsics(gradle项目结构)
我正在做一个Java项目,在这个项目中,我第一次尝试使用Kotlin。我开始使用Intellij
Idea中提供的JavaToKoltin转换器将某些类转换为Kotlin。除其他外,我的自定义例外现在已转换为Kotlin。但是使用此异常处理不再正确。
如果我MyCustomKotlinException.kt
在Java代码中抛出了一个自定义异常(例如),则不会捕获该异常(请参见下面的代码)。
// Example.javapackage fooimport java.util.*;import java.lang.*;import java.io.*;import foo.MyCustomKotlinException;class Example{ public static void main (String[] args) { try { // Do some stuff // if Error MyCustomKotlinException e = new MyCustomKotlinException("Error Message"); throw e; } catch (MyCustomKotlinException e) { // <-- THIS PART IS NEVER REACHED // Handle Exception } catch (Throwable e) { e.printStackTrace(); <-- This is catched } finally { // Finally ... } }}
因此任何人都可以向我解释为什么没有捕获到异常。MyCustomKotlinException
是从Kotlins继承的,KotlinsRuntimeException
只是java.lang.RuntimeException
。
// MyCustomKotlinException.ktpackage fooclass MyCustomKotlinException(err: String) : RuntimeException(err)
更新:
我将throw部分分为两行(实例创建和throwing),发现问题不在于throwing。创建实例后将保留try块。我创建此Kotlin类的实例有什么问题吗?
Update2:
我添加了第二个catch块,Throwable
并捕获了以下Throwable。
java.lang.NoClassDefFoundError: kotlin/jvm/internal/Intrinsics...Caused by: java.lang.ClassNotFoundException: kotlin.jvm.internal.Intrinsics
Update3:
更改了标题以更正错误,并通过将所有项目文件添加到jar中解决了问题(请参见下面的答案)。将Kotlin运行时库添加到gradle对我不起作用。
答案1
小编典典将所有项目文件添加到jar中对我来说解决了这个问题。我将以下行添加到我的build.gradle
jar { manifest { attributes ... } // This line of code recursively collects and copies all of a project''s files // and adds them to the JAR itself. One can extend this task, to skip certain // files or particular types at will from { configurations.compileClasspath.collect { it.isDirectory() ? it : zipTree(it) } }}
更新
:改变configurations.compile.collect
以configurations.compileClasspath.collect
根据本下面的答案。
android – java.lang.NoClassDefFoundError:失败的解析:Lio / realm / internal / SharedRealm $Durability
这就是我所做的.
的build.gradle
repositories { maven { url 'https://github.com/uPhyca/stetho-realm/raw/master/maven-repo' } } dependencies { ... compile 'com.uphyca:stetho_realm:2.0.0' compile 'com.facebook.stetho:stetho:1.4.1' }
我的应用类
public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); RealmConfiguration realmConfiguration = new RealmConfiguration.Builder(this).build(); Realm.setDefaultConfiguration(realmConfiguration); Stetho.initialize( Stetho.newInitializerBuilder(this) .enableDumpapp(Stetho.defaultDumperPluginsprovider(this)) .enableWebKitInspector(Stetho.defaultInspectorModulesProvider(this)) .build()); } }
应用程序崩溃时出现此错误:
E/AndroidRuntime: FATAL EXCEPTION: StethoWorker-main-304 Process: example.com.demoapp,PID: 12830 java.lang.NoClassDefFoundError: Failed resolution of: Lio/realm/internal/SharedRealm$Durability; at com.uphyca.stetho_realm.RealmPeerManager.openSharedRealm(RealmPeerManager.java:136) at com.uphyca.stetho_realm.RealmPeerManager.openSharedRealm(RealmPeerManager.java:128) at com.uphyca.stetho_realm.RealmPeerManager.getDatabaseTableNames(RealmPeerManager.java:55) at com.uphyca.stetho_realm.Database.getDatabaseTableNames(Database.java:124) at java.lang.reflect.Method.invoke(Native Method) at com.facebook.stetho.inspector.Methoddispatcher$MethoddispatchHelper.invoke(Methoddispatcher.java:96) at com.facebook.stetho.inspector.Methoddispatcher.dispatch(Methoddispatcher.java:67) at com.facebook.stetho.inspector.ChromeDevtoolsServer.handleRemoteRequest(ChromeDevtoolsServer.java:129) at com.facebook.stetho.inspector.ChromeDevtoolsServer.handleRemoteMessage(ChromeDevtoolsServer.java:111) at com.facebook.stetho.inspector.ChromeDevtoolsServer.onMessage(ChromeDevtoolsServer.java:87) at com.facebook.stetho.websocket.WebSocketSession$1.handleTextFrame(WebSocketSession.java:176) at com.facebook.stetho.websocket.WebSocketSession$1.onCompleteFrame(WebSocketSession.java:136) at com.facebook.stetho.websocket.ReadHandler.readLoop(ReadHandler.java:44) at com.facebook.stetho.websocket.WebSocketSession.handle(WebSocketSession.java:45) at com.facebook.stetho.websocket.WebSocketHandler.doUpgrade(WebSocketHandler.java:117) at com.facebook.stetho.websocket.WebSocketHandler.handleRequest(WebSocketHandler.java:83) at com.facebook.stetho.server.http.LightHttpServer.dispatchToHandler(LightHttpServer.java:84) at com.facebook.stetho.server.http.LightHttpServer.serve(LightHttpServer.java:61) at com.facebook.stetho.inspector.DevtoolsSocketHandler.onAccepted(DevtoolsSocketHandler.java:52) at com.facebook.stetho.server.ProtocolDetectingSocketHandler.onSecured(ProtocolDetectingSocketHandler.java:63) at com.facebook.stetho.server.SecureSocketHandler.onAccepted(SecureSocketHandler.java:33) at com.facebook.stetho.server.LazySocketHandler.onAccepted(LazySocketHandler.java:36) at com.facebook.stetho.server.LocalSocketServer$WorkerThread.run(LocalSocketServer.java:167) Caused by: java.lang.classNotFoundException: Didn't find class "io.realm.internal.SharedRealm$Durability" on path: DexPathList[[dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-support-annotations-24.2.1_fe2fc8f98c9647365914a4e0809de4cf3bdd5d0f-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_9-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_8-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_7-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_6-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_5-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_4-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_3-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_2-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_1-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-slice_0-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-realm-android-0.87.4_a528e85f9603c6e64968c150f61258a1621159d0-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-jsr305-2.0.1_54f738210fc8c811d7251e6035f61735e3c90b00-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-internal_impl-24.2.1_d63817604dbcd8615733073ed4cf6bd29db871e2-classes.dex",dex file "/data/data/example.com.demoapp/files/instant-run/dex/slice-internal_impl-24.2.1_d432bb06a79cf966d865aa5fa44c857409504f1f-classes.dex",dex file "/data/data/example.com.d
解决方法
您应该使用the 1.x branch of Stetho-Realm打开您的领域.
repositories { maven { url 'https://github.com/uPhyca/stetho-realm/raw/master/maven-repo' } } dependencies { compile 'com.facebook.stetho:stetho:1.3.1' compile 'com.uphyca:stetho_realm:0.9.0' }
Eclipse:java.lang.NoClassDefFoundError:javax / activation / DataHandler
我正在尝试用Java发送电子邮件。这是代码:
String mailSmtpHost = "smtp.example.com";
String mailTo = "email@example.com";
String mailFrom = "email@example.com";
String mailSubject = "Email subject";
String mailText = "Some text";
Properties properties = new Properties();
properties.put("mail.smtp.host",mailSmtpHost);
Session emailSession = Session.getDefaultInstance(properties);
try {
Message emailMessage = new MimeMessage(emailSession);
emailMessage.addRecipient(Message.RecipientType.TO,new InternetAddress(mailTo));
emailMessage.setFrom(new InternetAddress(mailFrom));
emailMessage.setSubject(mailSubject);
emailMessage.setText(mailText);
emailSession.setDebug(true);
Transport.send(emailMessage);
}catch(Exception e) {
System.out.println("Errore email: "+e.toString());
}
当我编译项目时,在线:
Message emailMessage = new MimeMessage(emailSession);
…出现以下错误:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/activation/DataHandler
注意:我正在使用 java -version: 9.0.4
Error:java: Internal compiler error: java.lang.Exception: java.lang.NoClassDefFoundError 解决
Error:java: Internal compiler error: java.lang.Exception: java.lang.NoClassDefFoundError 解决
IDEA 发现一个奇怪的错误
今天用 IDEA2018.1 运行 SpringBoot 项目报错如下:
Error:java: Internal compiler error: java.lang.Exception: java.lang.NoClassDefFoundError: org/springframework/boot/configurationprocessor/metadata/ConfigurationMetadata at org.eclipse.jdt.internal.compiler.apt.dispatch.RoundDispatcher.handleProcessor(RoundDispatcher.java:169)
解决方案:
分下看这个跟 Eclipse 有关,可是这个不是 Eclipse 项目(没有 Eclipse 的 Workspeace 信息),后来查找发现跟 Eclipse 有关设置就是之前自己设置锅编译器,改过来问题得到解决。解决步骤:IDEA 中 File-->settings-->Bulid Execution Deloyment-->Complier-->Java Complier 中的 user complier 有原来的 Eclipse 改为 javac 即可
exception java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
exception java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment
CreationTime--2018年9月5日17点09分
Author:Marydon
1.情景展示
在linux服务器下,运行的tomcat,通过java绘制图片的时候报错信息如下:
在本地测试却没有问题
2.原因分析
Java服务器处理图形元素,这些API需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集),因此,
之所以报错是因为:tomcat在启用时,Xserver服务没有启动。
3.解决方案
在Tomcat/bin/catalina.sh文件中增加:JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"
重启tomcat即可。
相关推荐:
- 类似文章
关于Gradle项目:java.lang.NoClassDefFoundError:kotlin / jvm / internal / Intrinsics和gradle项目结构的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于android – java.lang.NoClassDefFoundError:失败的解析:Lio / realm / internal / SharedRealm $Durability、Eclipse:java.lang.NoClassDefFoundError:javax / activation / DataHandler、Error:java: Internal compiler error: java.lang.Exception: java.lang.NoClassDefFoundError 解决、exception java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment的相关信息,请在本站寻找。
本文标签: