本篇文章给大家谈谈如何使用模块化Java在Gradle6.6中设置mainClassName,以及gradle多模块构建的知识点,同时本文还将给你拓展ClassObject.getClass,Clas
本篇文章给大家谈谈如何使用模块化Java在Gradle 6.6中设置mainClassName,以及gradle多模块构建的知识点,同时本文还将给你拓展ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别、getElementsByClassName()如何使用?总结getElementsByClassName()实例用法、Gradle 带来了错误版本的传递依赖[java.lang.NoClassDefFoundError in Gradle]、gradle 打包运行配置 Main-Class等相关知识,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:- 如何使用模块化Java在Gradle 6.6中设置mainClassName(gradle多模块构建)
- ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别
- getElementsByClassName()如何使用?总结getElementsByClassName()实例用法
- Gradle 带来了错误版本的传递依赖[java.lang.NoClassDefFoundError in Gradle]
- gradle 打包运行配置 Main-Class
如何使用模块化Java在Gradle 6.6中设置mainClassName(gradle多模块构建)
6.3版不支持JPMS,但6.4版以上不支持。因此,我假设您正在使用第三方gradle-modules-plugin。对于此插件,您需要使用1.7.0版或更高版本来支持Gradle的较新版本。
或者,删除插件并在Gradle中使用native support。现在看来,您同时是两者的混合体。
,在6.3 mainClassName = "$moduleName/app.Main"
中工作
在6.4+版本中工作
run {
main = "$moduleName/app.Main"
}
ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别
我想了解Class.forName(“
ClassName”)和ClassObject.getClass是否都返回该类的运行时实例。然后为什么在比较从这两个对象获得的结果Class对象时获取一个布尔值false(如果我们使用==或equals进行比较)。
我也想知道在类名上调用.class方法的确切用途。我读到它是在编译时等确定的,但目的是什么。Class.forName(“ ClassName”)是否足够?
谢谢
getElementsByClassName()如何使用?总结getElementsByClassName()实例用法
前面为大家介绍了一些有关html5新添加的选择器,分别是queryselector(),queryselectorall()和getelementsbyclassname()。这三个都有自己独特的功能,大家有需要的话可以看html5实战与剖析中的相关内容。今天为大家介绍classlist属性。
classList属性究竟是干什么的,我们先撇下classList不管。我们考虑这么一个问题,那就是我们如何将拥有多个类名的元素中的其中一个类名删除呢?梦龙较劲脑汁儿终于想到一个实现的方法。
将拥有类名li、meng和long,三个类名中的类名meng删除。
代码如下
HTML代码 <p>梦龙小站</p> JavaScript代码 //获取要删除类名meng的p var
1. HTML5实战与剖析之classList属性
简介:
前面为大家介绍了一些有关HTML5新添加的选择器,分别是querySelector(),querySelectorAll()和getElementsByClassName()。这三个都有自己独特的功能,大家有需要的话可以看Html5实战与剖析中的相关内容。今天为大家介绍classList属性。
2. HTML5实战与剖析之CSS选择器——getElementsByClassName()方法
简介:
HTML5中的querySelector()方法和querySelectorAll()方法都在前几篇中为大家介绍过了,不知道大家了解得怎么样了呢?
在这里复习一下,querySelector()方法是返回与传递的CSS选择符相匹配的第一个元素;querySelectorAll()方法是返回与传递的CSS选择符相匹配的所有元素,是一个NodeList对象。
简单的回顾之后,我来分享一下新一个方法——getElementsByClassName()方法。
【相关问答推荐】:
javascript - 如何获取getElementsByClassName()数组的下标?
javascript - 为什么下面这个代码不能把id换成class
以上就是getElementsByClassName()如何使用?总结getElementsByClassName()实例用法的详细内容,更多请关注php中文网其它相关文章!
Gradle 带来了错误版本的传递依赖[java.lang.NoClassDefFoundError in Gradle]
如何解决Gradle 带来了错误版本的传递依赖[java.lang.NoClassDefFoundError in Gradle]?
我有一个多项目构建。
它的一个模块 X 带来了一个包含传递弹性客户端依赖项的依赖项 B:
api (group: ''org.elasticsearch.client'',name: ''elasticsearch-rest-high-level-client'',version: 7.9.0) {
exclude group: ''org.yaml'',module: ''snakeyaml''
}
我在 X 内部进行了使用 B 的方法的测试,其中我将弹性客户端类作为参数传递。
X 使用 Spring Boot Gradle 插件。
在运行时,在执行使用依赖项 B 进行 ES 测试的集成测试期间,我收到此异常(原始类被屏蔽)
Exception in thread "I/O dispatcher 4" java.lang.NoClassDefFoundError: org/elasticsearch/cluster/Metadata/AliasMetadata
at dependencyB.myESService.index
at io.reactivex.internal.operators.single.SingleMap$MapSingleObserver.onSuccess(SingleMap.java:57)
at io.reactivex.internal.operators.single.SingleDoOnSuccess$DoOnSuccess.onSuccess(SingleDoOnSuccess.java:60)
at io.reactivex.internal.operators.single.SingleResumeNext$ResumeMainSingleObserver.onSuccess(SingleResumeNext.java:65)
at io.reactivex.internal.operators.single.SingleFlatMap$SingleFlatMapCallback$FlatMapSingleObserver.onSuccess(SingleFlatMap.java:111)
at io.reactivex.internal.operators.single.SingleCreate$Emitter.onSuccess(SingleCreate.java:67)
...
at org.elasticsearch.client.RestHighLevelClient$1.onSuccess(RestHighLevelClient.java:1663)
at org.elasticsearch.client.RestClient$FailureTrackingResponseListener.onSuccess(RestClient.java:590)
at org.elasticsearch.client.RestClient$1.completed(RestClient.java:333)
at org.elasticsearch.client.RestClient$1.completed(RestClient.java:327)
at org.apache.http.concurrent.BasicFuture.completed(BasicFuture.java:122)
at org.apache.http.impl.nio.client.DefaultClientExchangeHandlerImpl.responseCompleted(DefaultClientExchangeHandlerImpl.java:181)
at org.apache.http.nio.protocol.HttpAsyncRequestExecutor.processResponse(HttpAsyncRequestExecutor.java:448)
at org.apache.http.nio.protocol.HttpAsyncRequestExecutor.inputReady(HttpAsyncRequestExecutor.java:338)
at org.apache.http.impl.nio.DefaultNHttpClientConnection.consumeInput(DefaultNHttpClientConnection.java:265)
at org.apache.http.impl.nio.client.InternalIOdispatch.onInputReady(InternalIOdispatch.java:81)
at org.apache.http.impl.nio.client.InternalIOdispatch.onInputReady(InternalIOdispatch.java:39)
at org.apache.http.impl.nio.reactor.AbstractIOdispatch.inputReady(AbstractIOdispatch.java:114)
at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:162)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:337)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:315)
at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:276)
at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104)
at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:591)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.classNotFoundException: org.elasticsearch.cluster.Metadata.AliasMetadata
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.classLoader.loadClass(ClassLoader.java:521)
... 27 more
我不直接使用冲突的类。
Gradle 任务 dependencies 给了我一个提示(隐藏的内部版本和名称)
+--- org.path:dependencyB:123
| +--- org.path:another-lib:123 (*)
| +--- org.path:third-lib:123 (*)
| \--- **org.elasticsearch.client:elasticsearch-rest-high-level-client:7.9.0 -> 7.6.2**
据我所知,正在使用 ES 客户端的 7.6.2
版本而不是 7.9.0
,这会导致问题。
我不知道为什么会这样 - 就我而言,没有从其他任何地方提取 ES 客户端,并且 there are no custom rules 用于依赖版本。
我是否正确以及如何解决?任何提示?有什么想法吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
gradle 打包运行配置 Main-Class
用 gradle 编译,打包了一个 Java 项目
如果打成的包不用 gradle run 命令运行,用 Java 命令运行,但是 jar 包中没有配置相关的 Main-Class, 怎样配置 gradle 才能让 jar 包中包含 Main-Class?
关于如何使用模块化Java在Gradle 6.6中设置mainClassName和gradle多模块构建的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于ClassObject.getClass,ClassName.class和Class.forName(“ ClassName”)之间的区别、getElementsByClassName()如何使用?总结getElementsByClassName()实例用法、Gradle 带来了错误版本的传递依赖[java.lang.NoClassDefFoundError in Gradle]、gradle 打包运行配置 Main-Class的相关知识,请在本站寻找。
本文标签: