zoukankan      html  css  js  c++  java
  • windows 双击执行jar包出现:could not find the main class

    {一}动机

    最近自己写了个小应用,用于生成子系统树需要的配置信息,打包为可执行jar发给其他同事使用时双击jar包提示“could not find the main class”.

    首先当然要检查一下JRE环境等,经过一番折腾整理如下几项注意点(首先说明一下是在windows7):

    {二}问题分析

    {1}确认jar输出方式

    确认jar输入方式是不是不小心选错了,直接在netbeans中输出可执行jar,检查之后不存在此问题;

    {2}确认jar是否可执行

    正确配置java环境变量后,在控制台执行java -jar xxx.jar 是否正常运行,如果不能正常运行说明jar包有问题;

    问题一般是没有指定main方法入口,具体的方法是修改jar包内目录META-INF下的MANIFEST.MF文件,看是否有Main-Class属性,并且对应的类路径是否正确。

    {3}确认文件打开方式

    由于机子上装了压缩软件,jar包被压缩软件所关联,导致双击jar包无法运行,解决办法当然是改变打开方式:

    将默认打开方式改为jre/bin目录下的javaw.exe

    {4}修改windows注册表(这一点百度一下就有的,整理在此处备用)

    由于文件打开类型配置的问题,导致双击jar包出现找不到main函数,该类问题不管是xp,还是Win7比较统一

    的解决办法是修改关联程序的注册表,修改方法如下

    注意:"C:Program FilesJavajre6injavaw.exe"应为你所装的javaw.exe的实际路径

    注册表项的路径为:

    HKEY_CLASSES_ROOTAplicationsjavaw.exeshellopencommand

    在此路径下有一默认键值, 不正常的情况下, 键值是:"C:Program FilesJavajre6injavaw.exe" "%1"

    将键值改为"C:Program FilesJavajre6injavaw.exe" -jar "%1"

    {三}经过上述分析,终于通过修改注册表时候解决问题。

  • 相关阅读:
    C# 中的委托和事件
    Sql Server 中一个非常强大的日期格式化函数
    SQL中合并多行记录的方法总汇
    浏览器Quirksmode(怪异模式)与标准模式
    常用的Mysql数据库操作语句大全
    mysql sql语句大全
    MySQL 最基本的SQL语法/语句
    仿微信聊天面板制作 javascript
    $.ajax()方法详解
    正则表达式匹配电话号码和手机号码
  • 原文地址:https://www.cnblogs.com/masb/p/3154947.html
Copyright © 2011-2022 走看看