草庐IT

java - 不能从静态上下文中引用非静态字段 - Main 方法

这个问题在这里已经有了答案:Non-staticvariablecannotbereferencedfromastaticcontext(15个答案)关闭6年前。我的Spring-Boot应用程序中有2个类:-任务-运行者runner类包含我的main方法,我在其中尝试从我的Tasks类调用方法:运行者:@ComponentpublicclassRunner{Taskstasks;@AutowiredpublicvoidsetTasks(Taskstasks){this.tasks=tasks;}publicstaticvoidmain(String[]args){//errorbei

java - 如果外部类被泛化,则不能从静态上下文中引用“Main.this”

为什么下面的代码没问题,但是一将T作为泛型添加到Main中,就抛出如下错误?'Main.this'cannotbereferencedfromastaticcontext//publicclassMain{-uncommentthisfortheerrortoappearpublicclassMain{publicstaticvoidmain(String[]args){newMain();}classTestNonStatic{}privatestaticclassTestStatic{publicTestStatic(TestNonStaticnonStatic){//thisis

Java 难题访问 main 的参数而不传入它们

我有一个Java难题,我无法解决。给定以下三个类:publicclassA1{protectedbooleanfoo(){returntrue;}}publicclassB1extendsA1{}publicclassC1{privatestaticbooleansecret=false;publicbooleanfoo(){secret=!secret;returnsecret;}publicstaticvoidmain(String[]args){C1c=newC1();for(inti=0;i我需要完成B1类,但是我想要不更改类A1和C1或添加新文件,这样对于至少一个参数,C1将

Java SWT : Wrap main loop in exception handler?

您可能知道,标准的SWT主循环如下所示:Displaydisplay=newDisplay();Shellshell=newShell(display);...shell.open();while(!shell.isDisposed()){if(!display.readAndDispatch()){display.sleep();}}display.dispose();最近,我与一位同事争论将主循环包装在try-catch中是否有意义,如下所示:Displaydisplay=newDisplay();Shellshell=newShell(display);...shell.open

java - 异常在线程 "main"java.lang.UnsatisfiedLinkError : no jpcap in java. library.path

我正在使用netbeanside并尝试使用jpcap库捕获数据包。我的程序在突然出现这个错误之前可以正常运行Exceptioninthread"main"java.lang.UnsatisfiedLinkError:nojpcapinjava.library.path正在出现。我也在我的另一台电脑上试过ds,但没有成功。我添加了jpcap库,在安装之前我完全清除了旧版本。已尽一切可能。我遇到了严重的麻烦请帮忙! 最佳答案 将此添加到程序的开头:System.out.println(System.getProperty("java.l

java - list .MF : difference between Main-Class and Start-Class

在我接手的一个项目中,发现了一个Jar文件,里面有如下MANIFEST.MF文件:Manifest-Version:1.0Start-Class:com.xxx.ApplicationSpring-Boot-Version:1.2.7.RELEASEMain-Class:org.springframework.boot.loader.JarLauncherStart-Class和Main-Class有什么区别? 最佳答案 这是SpringBoot的一个特性。Main-Class定义SpringBoot的org.springframe

java - 为什么必须将main方法声明为public...为什么JVM不能执行private main方法

通常我在各种书籍中发现main方法应该是公共(public)的,因为它应该对类加载器可见。但是JVM执行(或提供特殊处理)各种私有(private)方法,例如ObjectOutputStream中的readObject/writeObject方法。 最佳答案 很明显,您的程序的入口点应该是可见的。 关于java-为什么必须将main方法声明为public...为什么JVM不能执行privatemain方法,我们在StackOverflow上找到一个类似的问题:

java - 为什么我通过反射调用 main 时参数个数错误?

我有一个类对象,我想调用一个静态方法。我有以下代码。Methodm=cls.getMethod("main",String[].class);System.out.println(m.getParameterTypes().length);System.out.println(Arrays.toString(m.getParameterTypes()));System.out.println(m.getName());m.invoke(null,newString[]{});这打印:1[class[Ljava.lang.String;]main但随后它抛出:IllegalArgumen

java - 线程 "main"java.lang.NoClassDefFoundError : org/apache/commons/codec/DecoderException 中的异常

我尝试通过Solrj查询Solr这是我的代码publicclassReadFromSolr{publicstaticvoidmain(String[]args)throwsMalformedURLException,SolrServerException{Stringurl="http://localhost:8983/solr";try{SolrServerserver=newCommonsHttpSolrServer(url);ModifiableSolrParamsparams=newModifiableSolrParams();params.set("qt","/select"

java - 从哪里调用 public static void main ?

我只是想知道我们的主要方法实际上是从哪里调用的。就像在eclipse中一样,当我们将它作为应用程序运行时,它会自动被调用。但是,如果我编写另一个具有相同签名但名称不同的方法,则它不会被调用 最佳答案 来自Java虚拟机的文档:DESCRIPTIONThejavatoollaunchesaJavaapplication.ItdoesthisbystartingaJavaruntimeenvironment,loadingaspecifiedclass,andinvokingthatclass'smainmethod.Themethod