精华内容
下载资源
问答
  • 今天写程序时遇到了Java程序报错:“找不到或无法加载主类”的解决方法 so 就开始 百度 google了好多办法但是对于我来说都不实用。 问题描述:一个java文件导入到一个包中,然后在class文件中加入了一张图片 ...

    今天写程序时遇到了Java程序报错:“找不到或无法加载主类”的解决方法
    so 就开始 百度 google找了好多办法但是对于我来说都不实用。
    问题描述:一个java文件导入到一个包中,然后在class文件中加入了一张图片
    原因就在这张图片

    在这里说一下class文件,好多新手都不知道什么是class文件,class文件也就是你编译出来的一个文件中包含好多. class 文件,再将class文件编译出来就可以看到程序的运行结果了。
    解决问题的办法:将class文件中的照片删除就ok了
    当然这只是我的一种情况,对于这种情况我总结了一下,主要有以下几种解决办法。

    1. 先检查自己的环境变量是否配置成功
      检查办法:
      ①win+r 输入cmd在这里插入图片描述
      ②输入 java -version在这里插入图片描述
      再输入 javac -version
      在这里插入图片描述

    出现这种情况就可以确定环境没有问题

    配置如下:
    JAVA_HOME是 D:\Java\jdk1.8.0_11
    Path是 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
    CLASSPATH是 ** .;%JAVA_HOME%lib;%JAVA_HOME%lib\tools.jar**
    注意:classpath最前面的 . ;是必须的


    1. 考虑是否在正确的包下面?
      不要忽略包这个概念
      加上package ***;之后需要把.java文件放到包内;
      4.假如你是eclipse编译器
      在这里插入图片描述
      将Build Automatically打上对勾
      4.点击项目右键properties->Java Build Path->Libraries
      在这里插入图片描述

    将带红叉的jre双击替换或者删掉再添加上合适的即可。

    在这里插入图片描述
    5 .Java文件不在项目的src路径内,也就是说源代码未被eclipse编译,字节码不存在无法运行了在项目名上右键 -> Builder Path -> Configure Build Path -> 选择Source面板 再点Add Folder, 把源代码所在的包路径的上层目录加进来。

    我的解决方法有可能不适合你但是问题一般就是出在这几点上。希望你能帮助到你。感谢支持。

    展开全文
  • war包中的文件的读取 在开发J2EE Web应用时,在开发阶段通常采用目录的部署方式,而在正式运行时通常把web应用打包为单个的.war文件进行方便地部署。...这样,要部署正式系统时就非常方便,只需要把这个.war文件

    war包中的文件的读取
    在开发J2EE Web应用时,在开发阶段通常采用目录的部署方式,而在正式运行时通常把web应用打包为单个的.war文件进行方便地部署。也就是在你的应用目录(比如WebLogic的DefaultWebApp)下,执行下面的命令:

    1.             jar cf0 mywebapp.war **

    这样,要部署到正式系统时就非常方便,只需要把这个.war文件拷贝到WebLogic的applications目录或Tomcat的webapps目录下即可自动进行部署。Tomcat会对部署的.war应用包进行自动监控、解包,所以不会出现下面提到的问题。而WebLogic并不会自动解包.war,所以如果在你的应用中,需要读取原来应用中的配置文件或其它资源文件时,就会发现,在解包部署时,正常运行的程序,在WebLogic中打包部署时,运行却出错,会报告找不到该文件。例如下面的应用:
    [pre] |--DefaultWebApp
    |--index.jsp
    |--.....jsp
    |--WEB-INF
    |-- web.xml
    |-- log4j.properties
    |-- classes
    ......[/pre]
    其中使用到了Log4J作为日志输出工具,Log4J的配置文件log4j.propertes放在DefaultWebAppWEB-INF目录下。Log4J通过一个自动加载的Servlet进行初始化,初始化代码如下:

    2.             ServletContext context = getServletContext();

    3.             org.apache.log4j.PropertyConfigurator.configure(context.getRealPath("/") +

    4.             "/WEB-INF/log4j.properties");


    其中,context.getRealPath("/")得到当前Web应用的真实根目录,比如,如果你的WebLogic安装在D:bea下,在Windows下context.getRealPath("/")通常会返回:
    D:beawlserver6.1configmydomainapplicationsDefaultWebApp
    在UNIX下类似:
    /bea/wlserver6.1/config/mydomain/applications/DefaultWebApp
    这样,和"/ WEB-INF /log4j.properties"拼接后,就得到了log4j.properties文件的真实路径,Log4J通过文件IO读取这个配置文件,完成初始化。
    现在一切正常!测试通过后,将DefaultWebApp下的所有文件打为一个.war包,进行部署时,发现系统报告找不到“D:beawlserver6.1null WEB-INF log4j.properties”文件!如果你的应用中还需要读取其它已经被打包到war包中的文件,都会报告找不到文件。并且,系统并不会到D:beawlserver6.1configmydomainapplicationsDefaultWebApp目录下寻找,而会到D:beawlserver6.1null下寻找。这是因为context.getRealPath("/")返回了null。查看ServletContext的API文档,

    public String getRealPath(String path)
    ……
    The real path returned will be in a form appropriate to the computer and operating system on which the servlet container is running, including the proper path separators.
    This method returns null if the servlet container cannot translate the virtual path to a real path for any reason (such as when the content is being made available from a .war archive).

    原来,对一个打包的应用来说,是没有RealPath的概念的,调用getRealPath只会简单地返回null。其实,也很好理解,一个文件被打包入了.war文件,就不存在目录结构了(虽然包中仍然存在目录结构,但这不等同于文件系统中的目录结构)。所以,对war包中的资源是无法得到RealPath的。这样也就无从通过文件IO进行读取了。那么,如何读取war包中的资源呢?答案是使用ServletContext.getResourceAsStream(String)方法。
    对于org.apache.log4j.PropertyConfigurator,有如下几种配置方法:

    5.             staticvoid configure(Properties properties);

    6.             staticvoid configure(String configFilename);

    7.             staticvoid configure(URL configURL);


    既然,现在不能得到war包中的Log4J的配置文件,那么可以通过读入InputStream,构造一个Properties,通过configure(Properties properties)方法同样可以完成配置。示例代码如下:

    8.             InputStream is = getServletContext().

    9.             getResourceAsStream("/WEB-INF/log4j.properties");

    10.         Properties props = newProperties();

    11.         try {

    12.         props.load(is);

    13.         } catch (IOException e) {

    14.         System.err.println("Load log4j configuration failed");

    15.         }

    16.         PropertyConfigurator.configure(props);


    那么,现在对于war应用可以成功运行,但如果现在不通过war部署,直接通过目录结构部署应用会不会又出现找不到资源的错误呢?请来看看ServletContext.getResourceAsStream的API文档,

    Returns a URL to the resource that is mapped to a specified path. The path must begin with a "/" and is interpreted as relative to the current context root.
    This method allows the servlet container to make a resource available to servlets from any source. Resources can be located on a local or remote file system, in a database, or in a .war file.

    可见,通过getResourceAsStream可以获取包括本地文件系统、远程文件系统、war包等资源。不会出现上面担心的问题。

    结论:

    1.在开发J2EE Web应用时,如果需要读取本应用中的文件,在servlet中尽量使用ServletContext.getResourceAsStream进行,而不要使用文件IO。

    2.如果在jsp 中直接用InputStream fis=application.getResourceAsStream("xxx”);

    application 对象实现javax.servlet.ServletContext 接口

    3.如果普通类中要取路径,可以将jsp 中的隐含对象appliction传过去,如:

    Method1 (ServletContext  application, HttpServletRequest request, String name)

     

    参考:http://blog.csdn.net/pengchua/article/details/2746695

    展开全文
  • 方式一:将pom里面热部署注释掉或者删掉即可

    方式一:将pom里面热部署注释掉或者删掉即可

    展开全文
  • SQL Server 客户端, 在连接 SQL Server 数据库以后。会自动读取 数据库的 数据字典信息。也就是 当前数据库,有哪些表/字段/视图/存储过程等基础信息。保存在客户端的内存里面。这样。当你在客户端输入 SQL 语句...

    原因:

    SQL Server 客户端, 在连接到 SQL Server 数据库以后。会自动读取 数据库的 数据字典信息。也就是 当前数据库,有哪些表/字段/视图/存储过程等基础信息。保存在客户端的内存里面。这样。当你在客户端输入 SQL 语句的时候,输入 表名字.会自动弹出 这个表的字段列表,让你选择。但是,当你新建了一个对象的时候, 例如表, 或者你的那个例子,是新建存储过程abc这个时候,数据库那里,已经有存储过程abc 了。但是客户端的缓存里面, 并没有 存储过程 abc 的信息。 因为内存里面的信息,没有更新。因此,在客户端那里。输入EXEC abc,abc下有红线。将 客户端关闭后,重新打开, 由于客户端 重新加载了 数据库的基础信息。知道了 当前数据库里面,有 一个名字叫 abc 的存储过程因此,就不出红线了。

    SQL Server 的工作方式, 是 客户端 - 服务器 的工作方式.就算 SQL SERVER 是安装的自己的电脑上的,数据库也存放在C盘但是你的机器上,实际上是运行了 2 个程序,一个是服务器程序,一个是 客户端程序。客户端 新建了存储过程, 实际上是把SQL代码, 发送给服务器程序。服务器程序 编译代码的有效性,并存储。假如 编译通过了, 那是可以运行的, 不管你数据库存在本机,还是存在服务器上面。至于你本地的那个红线,实际上是 客户端的 本地的模拟的 编译。客户端不管你代码是否正确,都是 发送给服务器那里去执行的。因此你 abc下有红线,提示找不到存储过程“abc”而 又能使用EXEC abc这个就是 客户端 认为 服务器上面,没有 abc 这个存储过程。但是你执行 EXEC abc客户端 是只能原样的把这句话,发给服务器如果 服务器那里,真的没有 abc 这个存储过程那么会返回 服务器的 错误提示。如果服务器有 abc 这个存储过程那么就会返回执行的结果。

     

    展开全文
  • idea 中 maven打包找不到符号

    千次阅读 2018-07-18 11:11:51
    1、概述 网上方法: ... 编码格式统一 - 在pom.xml中将compiler的编码格式设为UTF-8 <plugin> <groupId>org.apache.maven.plugins</groupId> ...
  • 在做一页面的局部修改时出现问题,IE报错找不到对象,在FireFox下又正常,只不过alert出来的中文出现了乱码,刚开始以为是自己的代码写错了,检查了很久都没找到问题。最后然后想到会不会是编码的问题,于是将JS...
  • mysql数据库找不到

    千次阅读 2018-08-15 16:22:55
    现象: 这是一句很正常的sql语句,我们的数据库中确定有这一张表...找不到的原因所在大致在sqlyog可视化工具的编译器有问题,因为有时候,sqlyog这个工具并不能有效的实现字符串的输入和拼写。 获取还有其他...
  • 在eclipse用Java输出内容到一个本地文件,报错java.io.IOException: 系统找不到指定的路径。 at java.base/java.io.WinNTFileSystem.createFileExclusively(Native Method) at java.base/java.io.File....
  • javaweb项目jsp页面找不到java类

    千次阅读 2018-09-08 11:01:21
    部署tomcat上的一个web程序报错:ItemsDao cannot be resolved to a type 这里的ItemsDao是一个java类 一般来说碰到这种问题,检查一下: 1、类名是否写错 2、路径 检查了之后发现作者的源码完美没有问题,...
  • 废话少说,上代码,接口原来写成了: List<BugCcDO> getBugCcs(Long[] workIds); mapper文件配置: <select id="getBugCcs" resultType="... ...
  • goland 没有代码提示,找不到依赖

    千次阅读 2020-05-11 12:50:32
    在使用goland 的过程中,发现几遍是通过 go get 成功的引入包,并且 ...但是编辑器还是没有对象代码提示。 https://goproxy.io 这个时候再看 依赖,就有了,然后goland 中的代码提示自然而然就好了 ...
  • 获取数据是异步进行,vue先执行绑定的数据,但此时赋值为空,直接拿两层是拿不到数据的。 解决办法:在data:里给first一个赋值为空,这样初始化时不会报错 data: { dataAll : { first : {}, } }, ...
  • 报错: /WEB-INF/views/order/cart/myshopcart1.jsp description:The requested resource is not available. controller中方法上少加一个注解@responseBody 作用: 该注解用于将Controller的方法返回的对象...
  • JS避免对象多层次获取时报错

    千次阅读 2019-07-13 17:25:43
    有时候我们需要访问一个对象较深的层次,但是如果这个对象某个属性存在的话就会报错,例如: var data = { a: { b: { c: 'ScriptOJ' } } } data.a.b.c // => scriptoj data.a.b.c.d // => 报错代码停止...
  • 找不到localhost的网页错误怎么办?

    千次阅读 2017-06-02 10:41:32
    有时候当我们写了代码运行的时候会出现找不到localhost网页的错误如图然后我们点击如图然后进入下图所示 图中最下方有个Warning点击后方的Fix修复一下就可以了!
  • ssm中spring mvc找不到控制器,报错404

    千次阅读 2017-12-26 22:58:44
    之前没学过spring mvc,所以做起来感觉有点很陌生,在网上看了看代码之后就呼呼呼的写代码了。写了2小时,终于把环境搭建好了。然后做了个小案例查询全部的数据,没想到直接就给我报错404。报错了就自己看,看了半天...
  • 第二步 只需在对应js代码里最前面加上以下代码就能正常运行 const jsdom = require("jsdom"); const { JSDOM } = jsdom; const dom = new JSDOM(`<!DOCTYPE html><p>Hello world<...
  • ],会导致能强转其他类型数组,比如Student[ ]. 动态代理 java三种代理模式 代理模式: 设置一个中间代理来控制访问原目标对象,以达到增强原对象的功能和简化访问方式。 静态代理 动态代理(JDK代理,借口代理) ...
  • feign get请求使用对象接收参数报错

    千次阅读 2018-11-17 16:23:49
    feign get请求使用对象接收参数报错 我们知道SpringBoot get请求时,参数多的时候我们可以使用请求对象来接收,像下面这样: @ApiOperation(value = “根据不同参数获取不同表数据”, response = PicaResponse.class,...
  • redis反序列化失败,在将redis存储的二进制数据反序列化成java bean时,找不到这个java类 。 原因 问题出现了,就得原因,拉上同事连猜带分析终于明白和上面的设置有关。 cas(单点登录)项目为了方便...
  • 1,对于用代码创建的excel和表,原始代码访问并会出现异常 2,对于用office手工创建的excel和表,需采用解决方法中的代码才可正常运行 3,解决方法的代码兼容代码和office手工创建的excel和表 【未...
  • Available parameters are [collection, list] 提示无法找到对应的参数ERID,其实不是只是这一个找不到,后面的参数都找不到的。 于是我们就想,这个ERID是封装实体类中的一个属性,按照第二种方式可以正常插入数据...
  • 问题描述 ClassPathXmlApplicationContext context; context = new ...在运行这段代码创建ClassPathXmlApplicationtext对象时,一直输出无法找到xml文件的异常,即使使用C:\Users\asus\Desktop\java\Spring...
  • 如下代码中,定义了3个类,ClassA,ClassB,ClassC,依次为被继承关系,ClassA,ClassB是模板类, 在ClassA中定义了一个纯虚拟函数getKeyFromObject,实现将从V中获取K的功能: getKeyFromObject函数在ClassA,ClassB...
  • 使用 Tomcat9.0 , spring5.0框架原始工厂类解耦,druid-1.0.9jar版本,JDK9,MSQL8版本数据库 模拟web页面登录案例时候出现druid.properties文件找不到报错信息,详情如下【案例代码贴最后】;     按照正常...
  • Dagger之找不到component

    千次阅读 2018-08-20 11:30:29
    最近在添加新功能的时候用到dagger,像往常一样,新建component,module,并在我的fragment中通过@Inject注入,一般来说,通过make project就能让dagger自动生成需要的类,但是我这出了问题,一编译就报错找不到...
  • 错误: 找不到符号

    千次阅读 2019-08-23 21:05:50
    错误: 找不到符号 符号: 方法 indexOf(String) 位置: 类 StringTest_2 int indexOf(String str)的作用是返回指定字符串第一次出现在字符串的索引
  • 场景: springboot 项目多模块已成开发大势所趋,抽出一个parent父工程,子模块基础模块(包含一些公用的...即使能打包成功,用java -jar启动jar包也会报Class Not Found,依赖的子模块工程的类找不到。 错误如下: maven-
  • 首先IE下报错对象不支持xx属性或方法”,意思就是代码中用了某个IE下没有的属性或方法,我们可以查看详细堆栈信息。 可以看到错误具体位置是这个文件的6:112699位置。 由于代码是压缩的,手动格式化后再看...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 406,972
精华内容 162,788
关键字:

代码报错找不到对象