草庐IT

OPTIONS_PROVIDER_CLASS_NAME

全部标签

Java 9 : Possible to have 2 modules with same name on module path

是否可以在模块路径上有2个名称完全相同(但内容略有不同)的模块?据我所知,Java9编译器并没有提示它。我有2个模块声明如下:modulecom.dj.helper{exportscom.dj.helper;}两者都包含com.dj.helper包,但包内的内容不同。然后在我的主应用程序中,我希望导入此模块:modulecom.dj{requirescom.dj.helper;}同名的两个模块都在我的模块路径上。我希望在编译我的com.dj模块时,编译器会提示同一模块存在两次,但事实并非如此。这是否实际上意味着您的模块路径上可能有同一个jar的2个版本,而Java不知道要使用哪一个?

java - ServletContextListener 严重 : Error configuring application listener of class marktest. 配置

我的Javaservlet似乎在提示找不到包含在包(marktest)中的文件。我正在使用Eclipse(Indigo)和Tomcat7进行开发。这里是错误:SEVERE:Errorconfiguringapplicationlistenerofclassmarktest.Configjava.lang.ClassNotFoundException:marktest.Configatorg.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1678)atorg.apache.catalin

java - 使用 JDK 1.8 编译 java : cannot access class file. .. 找不到类文件

虽然相同的代码在JDK1.6版本中可以成功编译,但在升级到JDK1.8后它无法编译,提示javacannotaccess....classfile...asclassfilenotfoundthough它存在。我在IntelliJIdea13IDE中编译它,尝试使用重建选项和配置的ANT构建-结果相同。非常感谢任何帮助。cannotaccessIDispatchRequestclassfileforcom.abc.xyz.orchestrator.dispatch.IDispatchRequestnotfound1errorCompilefailed;seethecompilererr

java.lang.ClassFormat错误: Extra bytes at end of class file

当我尝试运行这个程序时,我遇到了一个奇怪的错误。该类可以很好地编译成多个.class文件,我上周(在编辑它之前)编译它就好了。但是现在,我看到了:Exceptioninthread"main"java.lang.ClassFormatError:Extrabytesattheendofclassfileblah/hooplah/fubar/nonsense/IndexId$Transaction根据我的了解,Java6build1.5可以修复它,因为它允许在类文件末尾添加额外的字节(我认为),但我更愿意使用build1.6。我在Windows上编辑,然后通过FTP将.java文件传输到

Java:T对象; obj.getClass() 的类型是 Class<?> 而不是 Class<?延伸 T>。为什么?

在这样的函数中:voidfoo(Tobj)obj.getClass()的类型是Class而不是Class.为什么?下面的代码工作正常:Stringfoo="";ClassfooClass=foo.getClass();所以T#getClass()的签名似乎返回一个Class,对吧?如果T为什么签名不同真的是泛型吗?为了克服这个问题(并且让我更清楚我在徘徊什么),我实现了这个功能:@SuppressWarnings("unchecked")staticClassclassOf(Tobj){return(Class)obj.getClass();}问题又来了:为什么这里需要类型转换而不是S

java - 为什么调用父类(super class)方法?

classOne{publicvoiddoThing(Oneo){System.out.println("One");}}classTwoextendsOne{publicvoiddoThing(Twot){System.out.println("Two");}}publicclassUgly{publicstaticvoidmain(String[]args){Twot=newTwo();Oneo=t;o.doThing(newTwo());}}结果:一classOne{publicvoiddoThing(Oneo){System.out.println("One");}}class

java - 对子类实例使用父类(super class)类型

我知道这个问题已经被问了很多,但我认为通常的答案远不能令人满意。给定以下类层次结构:classSuperClass{}classSubClassextendsSuperClass{}为什么人们使用这种模式来实例化子类:SuperClassinstance=newSubClass();而不是这个:SubClassinstance=newSubClass();现在,我看到的通常答案是,这是为了将instance作为参数发送给需要SuperClass实例的方法,如下所示:voidaFunction(SuperClassparam){}//somewhereelseinthecode.....

c# - Foo.class 是做什么的?

我正在看一些Java代码,我经常看到这段代码。Foo.class这是用来表示类的类型?是不是类似于Foo.GetType();typeof(Foo);在C#中?它的用途是什么?它的含义是什么? 最佳答案 是的,Java中的Foo.class等同于C#中的typeof(Foo)。参见section15.8.2oftheJLS有关类文字的更多信息。它不与在引用上调用GetType()相同,后者获取对象的执行时间类型。Java的等价物是someReference.getClass()。您可能在Java代码中比在C#中更频繁地看到它的一个原

java - 在 Windows 8 上安装 Elasticsearch 5.0.2 -\config\jvm.options "was unexpected at this time"

我是StackOverflow的新手(尽管潜伏了很长时间)。我正在努力在我的笔记本电脑上安装elasticsearch。它是Windows8,我刚刚将java更新到Java8,并且我使用setJAVA_HOME设置了新路径。但是,每当我尝试在命令行上运行elasticsearch.bat文件时,我都会收到此错误:\elasticsearch-5.0.2\bin\..\config\jvm.options这时候出乎意料如有任何帮助,我们将不胜感激 最佳答案 我还尝试在我的Windows2016R2Datacenter(64位)上设置E

java - MANIFEST.MF 中的Class-Path 是否只能包含jar 文件?

我想在其他目录中包含类文件,而不是在主类的目录中。如果我将这些目录放入MANIFEST.MF的Class-Path属性中,它不起作用。为什么?除了将这些类打包成一个jar文件,还有什么解决办法吗? 最佳答案 如该链接中所述,需要尾部斜线:Class-PathAttribute 关于java-MANIFEST.MF中的Class-Path是否只能包含jar文件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.