精华内容
下载资源
问答
  • 1.先在命令行进入到保存java程序的文件夹下 进入方法: 1.按住win + R进入命令行 2.输入cmd,回车或点击确认 3.进入文件夹找到java文件所在地址 4.复制地址 5.命令行输入文件所在的硬盘 格式为 盘符名称: (我的...

    1.先在命令行进入到保存java程序的文件夹下
    进入方法:
    1.按住win + R进入命令行
    在这里插入图片描述
    2.输入cmd,回车点击确认
    在这里插入图片描述
    3.进入文件夹找到java文件所在地址
    在这里插入图片描述
    4.复制路径
    5.命令行输入文件所在的硬盘 格式为 盘符名称: (我的就是:G:)回车
    在这里插入图片描述

    6.在命令行输入CD 上一步复制的地址,回车(CD和路径中间有空格)
    在这里插入图片描述
    6.1要注释程序里的包名,不然打开不了
    在这里插入图片描述
    7.1注释包名(编辑器报错暂时不管它)(注释完记得手动保存 ctrl + s
    在这里插入图片描述

    7.输入javac 文件名.java(在当前目录生成class文件)
    在这里插入图片描述
    如图所示,已经生成了
    8.输入java 文件名 (文件名后不要带后缀)
    在这里插入图片描述

    展开全文
  • 前面的文章中,我们已经知道如何使用javac来编译java文件和...命令行运行java程序的两种方式: 方式一: 直接使用java -jar yveshe.jar的方式来运行,这里yveshe.jar中的项目清单文件MANIFEST.MF需要配置Main-Clas...

    在前面的文章中,我们已经知道如何使用javac来编译java文件和运行简单的单个class文件了,命令行编译Java程序以及运行class文件,本篇文章主要讲归纳讲解下通过命令行来运行java程序

    命令行运行java程序的两种方式:
    方式一:
    直接使用java -jar yveshe.jar的方式来运行,这里在yveshe.jar中的项目清单文件MANIFEST.MF需要配置Main-Class属性值.
    方式二:
    Linux系统多个jar之间的分隔符号用:,Windows系统多个jar之间分隔符号用;,遵循java -cp xx.jar;xxxjar 主类 参数
    java -cp .;c:\classes\myClass.jar;d:\classes\*.jar packname.mainclassname
    EG:java -cp reference1.jar;reference2.jar com.yveshe.Test hello的方式运行jar.-cp后面默认是相对路径,也可以写扩展包的绝对路径.

    注意: 选项-cp-classpath是没有区别的,主要是由于classpath太长了于是就提供了简写的选项.
    注意:这里不建议大家通过命令java -cp指定了扩展类位置后有在单个jar中的MANIFEST.MF中配置.


    如何使用命令行模式来运行jar文件?

    这里首先需要介绍下jar文件到底是什么?

    JAR文件(Java归档,英语:Java ARchive)是一种软件包文件格式,通常用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便分发Java平台应用软件或库.简单点理解其实就是一个压缩包.既然是压缩包那么我们为了提取JAR文件的内容,就可以使用任何标准的unzip解压缩软件,或者每个Java虚拟机都带有的jar命令jar -xf foo.jar来解压相应的jar文件来获取其中的内容.

    在了解了jar文件的基本信息后,我们该如何运行它呢?

    在java中我们使用命令行 java -jar cmd.jar来运行jar文件.

    我们通过Eclipse的Export --> Runnable jar file 导出一个可以运行的cmd.jar文件然后执行既可.这时候我们就会想为什么是导出Runnable jar file 而不是普通的jar呢?主要是Eclipse在导出Runnable jar file的时候会自定生成一个MANIFEST.MF项目清单文件,并且会做一些配置.
    如果我们直接运行一个普通的jar会提示xxx.jar中没有主清单属性也就是在MANIFEST.MF中没有配置Main-Class值.

    一个简单的配置如下(注意Main-Class的值是包名.入口类):

    Manifest-Version: 1.0
    Class-Path: .
    Main-Class: com.yveshe.PackageClass
    • 1
    • 2
    • 3

    上面说的是最简单的方式,也就是一个项目不依赖任何其他依赖包的时候,那么如果一个项目依赖了很多外部的jar包,如果不做特殊的处理肯定是会有java.lang.NoClassDefFoundError:异常的,那么我们该如何配置呢?
    当有多个需要依赖的jar的时候,我们可以通过配置Class-Path来实现,当项目依赖多个外部的jar时可以空格分隔开配置在Class-Path中.

    Manifest-Version: 1.0
    Class-Path: . cmd_lib/commons-lang3-3.7.jar  
    Main-Class: com.yveshe.PackageClass
    • 1
    • 2
    • 3

    这里简单介绍下常用的配置属性:

    MailClass: 是程序启动类(包名.类名)
    注意:可执行的JAR文件中的Manifest文件用代码Main-Class: myPrograms.MyClass指定了入口点类,注意要指明该类的路径(运行时的-cp参数将被忽略).有些操作系统我们可以在点击后直接运行可执行JAR文件。而更通用的的方式是通过命令行执行java -jar foo.jar

    ClassPath:是配置搜索类文件的路径 可以配置的是jar和zip或者目录,可以在这里配置项目中需要的依赖jar地址.

    Java常用命令:

    java -cp或者java -classpath:

    虚拟机在运行一个类时,需要将其装入内存,虚拟机搜索类的方式和顺序如下:
    Bootstrap classes,Extension classes,User classes。
    Bootstrap 中的路径是虚拟机自带的jar或zip文件,虚拟机首先搜索这些包文件,用System.getProperty(“sun.boot.class.path”)可得到虚拟机搜索的包名。
    Extension是位于jre”lib”ext目录下的jar文件,虚拟机在搜索完Bootstrap后就搜索该目录下的jar文件。用System. getProperty(“java.ext.dirs”)可得到虚拟机使用Extension搜索路径。

    它告知虚拟机搜索目录名、jar文档名、zip文档名,之间用分号;分隔。
    例如当你自己开发了公共类并包装成一个common.jar包,在使用 common.jar中的类时,就需要用-classpath common.jar 告诉虚拟机从common.jar中查找该类,否则虚拟机就会抛出java.lang.NoClassDefFoundError异常,表明未找到类定义。 在运行时可用System.getProperty(“java.class.path”)得到虚拟机查找类的路径。

    User classes搜索顺序为当前目录、环境变量 CLASSPATH、-classpath
    思考: 这里是一最后搜索到的路径生效吗?(待确认)~~

    关于搜索路径:(程序运行指定的classpath 和 配置的系统环境变量CLASSPATH)

    使用-classpath后虚拟机将不再使用CLASSPATH中的类搜索路径,如果-classpath和CLASSPATH都没有设置,则虚拟机使用当前路径(.)作为类搜索路径。
    推荐使用-classpath来定义虚拟机要搜索的类路径,而不要使用环境变量 CLASSPATH的搜索路径,以减少多个项目同时使用CLASSPATH时存在的潜在冲突。例如应用1要使用a1.0.jar中的类G,应用2要使用 a2.0.jar中的类G,a2.0.jar是a1.0.jar的升级包,当a1.0.jar,a2.0.jar都在CLASSPATH中,虚拟机搜索到第一个包中的类G时就停止搜索,如果应用1应用2的虚拟机都从CLASSPATH中搜索,就会有一个应用得不到正确版本的类G。

    CLASSPATH=.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
    .代表当前路径,环境变量中路径的分隔符号会根据操作系统的不同而不同,这里主要的区别可以查看我之前写的关于环境变量和系统属性的文章Java中获取系统属性和环境变量

    要指定各个JAR文件具体的存放路径,相同路径有多个可使用通配符

    如何通过Eclipse导出可直接运行的Jar包?

    方式一:将项目中需要的依赖直接在该项目的Jar生成.
    Export:

    运行命令:

    方式二:将项目依赖的jar归纳到一个子文件夹中,这里需要的注意的是如果是依赖的项目则该部分代码还是直接在本项目的jar中生成了.(建议在导出可执行jar时,将依赖的项目单独打包放入classpath)

    参考:
    java命令参数说明大全(偷来的):http://xinklabi.iteye.com/blog/837435

    原文: https://blog.csdn.net/u011479200/article/details/80099476

    展开全文
  • 1:命令行运行Java桌面程序 a、打开cmd命令窗口进入JavaDesk.java文件所在目录 b、运行javac JavaDesk.java命令编译文件(注意编码问题,含中文个人设置为GBK/GB2312),此时该目录下将会生成JavaDesk.class等相关...

    1:命令行运行Java桌面程序

    a、打开cmd命令窗口进入JavaDesk.java文件所在目录

    b、运行javac JavaDesk.java命令编译文件(注意编码问题,含中文个人设置为GBK/GB2312),此时在该目录下将会生成JavaDesk.class等相关文件

    c、再运行java JavaDesk命令即可运行窗口程序

    2:JavaDesk.java文件源代码

    import javax.swing.*;
    import javax.swing.border.EmptyBorder;
    import javax.swing.border.TitledBorder;
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    /**
     * 主要实现功能:实现一个学生选课的图形界面
     */
    public class JavaDesk extends JFrame {
    
        // 定义组件
        private static final long serialVersionUID = 1L;
        private JPanel contentPane;
        private JTextField tfName, tfNum, allInfo;
        private JRadioButton rb1, rb2;
        private JCheckBox cb1, cb2, cb3;
        private JComboBox<String> t1, t2, t3;
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            EventQueue.invokeLater(new Runnable() {
                public void run() {
                    try {
                        JavaDesk frame = new JavaDesk();     // 创建一个窗口
                        frame.setVisible(true);                                    // 让该窗口实例可见
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            });
    //      JavaDesk frame=new JavaDesk();
    //      frame.setVisible(true);
        }
    
        /**
         * 窗口属性的设置,内部组件的初始化
         */
        public JavaDesk() {
            setTitle("Java窗口程序测试");                                 // 标题
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);             // 设置关闭时推出JVM
            setSize(600, 400);                              // 设置窗口大小
            setLocationRelativeTo(null);                                // 设置窗体居中
            contentPane = new JPanel();                                 // 内容面板
            contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
            contentPane.setLayout(new BorderLayout(0, 0));      // 设置布局
            setContentPane(contentPane);
            JPanel panel = new JPanel(new GridLayout(5, 1, 5, 10));  // 5行1列的表格布局
            panel.setBorder(new TitledBorder(null, "", TitledBorder.LEADING, TitledBorder.TOP, null, null));
            contentPane.add(panel, BorderLayout.CENTER);          // 给panel添加边框
            // 第一行
            JPanel panel_1 = new JPanel();
            panel.add(panel_1);
            JLabel label = new JLabel("姓名");
            panel_1.add(label);
            tfName = new JTextField();
            panel_1.add(tfName);
            tfName.setColumns(10);
            JLabel label_2 = new JLabel("学号");
            panel_1.add(label_2);
            tfNum = new JTextField();
            tfNum.setColumns(10);
            panel_1.add(tfNum);
            rb1 = new JRadioButton("男");
            panel_1.add(rb1);
            rb1.setSelected(true);                               // 设置单选按钮中,默认选中的按钮
            rb2 = new JRadioButton("女");
            panel_1.add(rb2);
            ButtonGroup bts = new ButtonGroup();                   // 单选按钮需要加入到同一个ButonGroup中才能生效
            bts.add(rb1);
            bts.add(rb2);
            // 第二行
            JPanel panel_2 = new JPanel();
            panel.add(panel_2);
            cb1 = new JCheckBox("高等数学");
            panel_2.add(cb1);
            t1 = new JComboBox<String>();
            t1.setModel(new DefaultComboBoxModel<String>(new String[]{"林老师", "赵老师", "孙老师"}));
            panel_2.add(t1);
            // 第三行
            JPanel panel_3 = new JPanel();
            panel.add(panel_3);
            cb2 = new JCheckBox("世界经济");
            panel_3.add(cb2);
            t2 = new JComboBox<String>();
            t2.setModel(new DefaultComboBoxModel<String>(new String[]{"张老师", "刘老师"}));
            panel_3.add(t2);
            //第四行
            JPanel panel_4 = new JPanel();
            panel.add(panel_4);
            cb3 = new JCheckBox("音乐赏析");
            panel_4.add(cb3);
            t3 = new JComboBox<String>();
            t3.setModel(new DefaultComboBoxModel<String>(new String[]{"王老师", "周老师"}));
            panel_4.add(t3);
            // 第五行
            JPanel panel_5 = new JPanel();
            panel.add(panel_5);
            JButton jbOk = new JButton("确定");
            panel_5.add(jbOk);
            JButton jbRest = new JButton("重填");
            panel_5.add(jbRest);
            // 添加选课信息
            JPanel panelSouth = new JPanel();
            contentPane.add(panelSouth, BorderLayout.SOUTH);
            JLabel labe = new JLabel("选课信息");
            labe.setHorizontalAlignment(SwingConstants.LEFT);
            panelSouth.add(labe);
            allInfo = new JTextField();
            allInfo.setColumns(30);
            panelSouth.add(allInfo);
            //添加标题
            JPanel panelNorth = new JPanel();
            contentPane.add(panelNorth, BorderLayout.NORTH);
            JLabel labelTitle = new JLabel("学生选课系统");
            labelTitle.setForeground(Color.DARK_GRAY);
            labelTitle.setFont(new Font("宋体", Font.BOLD, 20));
            panelNorth.add(labelTitle);
    
            // 给确定按钮添加事件处理代码
            jbOk.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    StringBuilder info = new StringBuilder();
                    String name = tfName.getText();
                    String num = tfNum.getText();
                    String sex;
                    if (rb1.isSelected()) {
                        sex = "男";
                    } else {
                        sex = "女";
                    }
                    info.append(name + num + sex);
                    if (cb1.isSelected()) {
                        String c = cb1.getText();
                        String t = t1.getSelectedItem().toString();
                        info.append(":" + c + t);
                    }
                    if (cb2.isSelected()) {
                        String c = cb2.getText();
                        String t = t2.getSelectedItem().toString();
                        info.append("," + c + t);
                    }
                    if (cb3.isSelected()) {
                        String c = cb3.getText();
                        String t = t3.getSelectedItem().toString();
                        info.append("," + c + t);
                    }
                    allInfo.setText(info.toString());                     // 把学生信息和选课信息放到文本框中
                }
            });
    
            // 给重填按钮设置事件处理代码
            jbRest.addActionListener(new ActionListener() {
    
                @Override
                public void actionPerformed(ActionEvent e) {
    
                    tfName.setText("");
                    tfNum.setText("");
                    rb1.setSelected(true);
                    cb1.setSelected(false);
                    t1.setSelectedIndex(0);
                    cb2.setSelected(false);
                    t2.setSelectedIndex(0);
                    allInfo.setText("");
                }
            });
        }
    }

     

    展开全文
  • 命令行运行java程序

    2019-09-15 09:18:16
    最先编java程序是Eclipse上,里面会有很多的配置的东东,比如,workspace,工程名,包,类等等,后来学会了dos下运行java程序,个人感觉如果只是很小的程序,就没有必要用那些集成的开发工具了,用dos很方便。...

    最先编java程序是在Eclipse上,里面会有很多的配置的东东,比如,workspace,工程名,包,类等等,后来学会了在dos下运行java程序,个人感觉如果只是很小的程序,就没有必要用那些集成的开发工具了,用dos很方便。前面的文章里面有说过了如何配置java开发环境,

    做完这个之后,就是说可以开始编译java程序了。

    在运行中键入command,弹出dos界面

    用命令行运行java程序

    比如说你的*.java程序在D: 就直接在后面敲“D:”,然后

    javac *.java

    java *

    就可以了,这里“*”是你的程序名,也是文件名,不过javac后面对应的文件名不必大小写完全一样,而java后面的要求完全一样。javac是将java程序编译成*.class文件,java则是执行编译完的文件,注意这一步不需要加后缀名。

     

    转载于:https://my.oschina.net/haquanwen/blog/67645

    展开全文
  • 在命令行运行JAVA程序 1、启动命令行程序 方法①: Windows+R 输入cmd 点击【确定】 方法②: 在搜索栏输入cmd 点击【命令提示符】应用 2、运行程序 #输入文件所在盘"e:" C:\Users\DELL>e: #输入"cd...
  • java小白,求指导 错误: 找不到或无法加载主类 xiti
  • 前提:JDK环境变量里有配置 1.首先建个工程Test(假如放于D:/java)将src目录下的文件拷贝到classes目录下 2.运行里输入cmd->回车 3.输入D:->回车 4.输入cd java回车(cd未打开文件夹) 5.输入cd test->回车 6.输入...
  • java程序可以在eclipse中编译运行,也可以在命令行中编译运行。 1.打开cmd界面。点击桌面左下角的开始菜单,在搜索栏中输入 cmd (win 7系统),即可打开dos界面。 2.查看jdk是否安装成功。输入 java -version,若...
  • 如何在命令行运行java程序 在命令行运行代码之前要先强调两点问题: 1.文件名要和主类名相同,而且文件名要以.java结尾。 2.修改源文件后要保存之后再命令行重新编译运行。 这几给大家介绍三种简单地情况: 首先...
  • 如何使用命令行编译运行java程序

    千次阅读 2017-05-20 11:52:41
    使用java编程的时候,一般来说我们都是通过使用IDE来编写运行程序的,但是学会使用命令行来编译运行java程序还是很有必要了!!
  • (下载的文件中包含JDK和JRE,安装时将它们安装同一目录下的不同文件夹里,所有的文件夹(包括目录中的)一律不能有中文和空格) 2.安装JDK和JRE 3.安装完成后需要配置环境 具体步骤:我的电脑---属性---高级系统
  • 如果要cmd命令行中,使用java运行java程序,可能会出现如下问题: 那么,出现这样的问题时,该如何解决呢?解决办法如下: 1.由于是运行阶段出现的问题,那么可能是环境变量配置不当的问题,即可能是...
  • cmd运行java 有萌新问我怎么用cmd运行Java,他运行报错了,怎么办?如图是他的执行过程: 他说就这一个类,里面包含了main方法怎么会没有加载主类呢。 其实很简单,因为你执行的时候并不能直接...
  • 如何在windows命令行窗口运行Java程序

    千次阅读 2015-04-23 08:25:48
    安装了jdk的电脑上都是可以运行Java程序的,当运行测试一些小程序的时候就不必IDE中了。下面用一个简单的HelloWorld程序看一下运行过程。。 工具/原料 确定配置好了Java运行的环境。 ...
  • 如何在命令行运行IDEA的Java程序

    千次阅读 2020-02-01 20:47:58
    一、首先进入Java代码所在包的目录 演示:博主所要运行的MainTest类包test2下,...若编译完成后会在Java程序所在目录下生成一个类名.class文件 三、运行程序 在运行时也需要带着包名,格式:java 包名.类名 ...
  • 命令行编译Java程序

    2018-12-18 11:12:27
    本文介绍如何在windows系统的命令行内编译运行一个有输入的简单Java程序。 示例中,输入“Alice”,输出“hi, Alice. How are you?” 1 新建一个文本文档,写入如下代码。在 E:\program\JavaTestCode 位置另存为Hi...
  • 这样方便了我们工作,但是却使我们忽略了代码是如何执行的本质,或者当电脑上只有jre环境,没有开发环境,就需要在cmd环境下进行java程序的编译和运行,本文详细介绍了如何在cmd环境下使用命令行执行java程序。...
  • 我们上文书说到,我们首先安装Java,然后设置Java环境,然后编译运行了一个简单的Java程序在命令行模式下显示了一个“Hello baby”。那么,为什么呢?发生了什么呢? 首先,下载安装Java就不用问为什么了对吧?...
  • 命令行运行Java程序的方法

    千次阅读 2018-04-22 13:47:53
    这是个简单但容易忽略的问题,新手往往被一些看似不起眼的小坑阻挡而裹足不前——本文旨在以最轻松的氛围讲解如何在命令行界面下运行Java程序,包括使用Jar工具进行打包 写在前面 Java的文件体系 Java的....
  • https://blog.csdn.net/ankle306/article/details/78274594程序eclipse中可以运行,脚本(命令行)中报错http://www.cnblogs.com/meetrice/archive/2012/07/13/2589886.html怎样查看Eclipse运行java程序时用的...
  • S2:在命令行界面进入你的Java程序所在文件目录下 (1)首先要改变盘符:你的文件在哪个盘下面就改到哪个盘 例如:在E盘,在命令行界面输入: E:(盘名加冒号) (2)找到Java文件所在的文件路径,复制 (注意: 无包...
  • 问题:编写了一个.java程序,该程序中引入了第三方jar包,如何在命令行编译并运运? 举例:HttpDemo.java import java.net.*; import java.io.*; import java.util.*; import com.alibaba.fastjson.*; public ...
  • 当我们安装好JDK后,发现并不能执行我们的Java程序,其实不是不能执行,是因为我们的javac.exe(编译工具)和java.exe(执行工具)与我们缩写的Java源程序不同一个文件路径之下,所以会出现不能编译和执行的情况。...
  • 如何在命令行中编译运行Java applet?

    千次阅读 2009-08-28 19:05:00
    可以有以下步骤来编译运行Java applet:假设我们的程序叫TestApplet.java,首先在命令行中切换到程序当前所在的目录。我们需要编译生成.class文件。命令行中输入:javac TestApplet.java,我们发现有提示:”...
  • 使用命令行编译、运行Java程序

    万次阅读 多人点赞 2018-07-08 19:12:21
    不借助IDE的情况下,如何编译、运行Java程序。 使用javac 命令,可以通过只敲击javac 看到各种命令参数。 必学参数 -d -cp,这俩下面会讲到 如果javac命令不能用,看一下环境变量是否没配对。 我们从简单到...
  • 关于在eclipse里编译后的java程序如何在dos命令窗口中运行的方法的说明 列子:假设你的工作空间路径如上图所示 定位到对应工程目录如下: F:\workspace\javaoop_bookstore F:\workspace\javaoop_bookstore>...
  • 请问如何在WINDOWS下后台运行JAVA程序而不打开命令行 我添加了一个任务计划,但是每次运行程序的时候都会打开命令行窗口,我不希望命令行窗口出现,怎么办?
  • 下面,我们一起学习如何用cmd命令行编译运行一个Java程序。 1.windows下利用cmd命令行,可以调用jdk里的javac.exe和java.exe,从而对java文件进行编译和执行,前提是jdk已成功安装并正确配置...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 461
精华内容 184
关键字:

如何在命令行运行java程序

java 订阅