引言:很多人用ide集成开发环境用的多了,对dos命令编译多个java文件或引入jar包都变得陌生了,java不同于其他解释语言,如ruby.php 都有require,直接引入即可运行代码,但java需要先编译成字节码,所以运行的时候需要在cmd里面加些参数 1. 引入外部jar包编译运行 测试目录结构 test -- src/A.java -- lib/pinyin4j-2.5.0.jar  A.java 代码如下: import net.sourceforge.pinyin4j.Piny…
1.问题如下 当在命令行使用java命令执行字节码文件时提示“错误:找不到或无法加载主类” 2. 问题分析 这是由于在运行时类的全名应该是包名+类名,例如在包net.xsoftlab.baike下的类SelfDefineClassLoader的全名应为net.xsoftlab.baike.SelfDefineClassLoader. 3.问题的解决 java命令后跟类的全名,执行时会根据字节码文件的路径加上类的全名来寻找class文件的位置,需注意路径中不能再含有类全名中包路径部分. 当我们以j…
近期在做springboot项目,发现springboot项目上有个红叉但找不到哪个类报错,ecplise没有把项目自动编译,运行还提示“错误: 找不到或无法加载主类”,进入工作空间“项目\target\classes”,发现项目java类根本没有编译,尝试各种方式发现均不可以,后来在网上发下这篇文章试了确实可以http://blog.csdn.net/u011526234/article/details/50394951,现在remark以下,希望也可以帮到其他遇到类似问题的盆友们 步骤如下:…
发现问题 切换到mac平台后,突然想写点程序运行在mac下,想到mac自带java,会方便好多.不过在这过程中遇到了麻烦: 总是提示 “错误: 找不到或无法加载主类” 工程结构 查了好久,终于找到原型所在,发现网上很多资料都写的都不太多,自己记录一下.先看看工程的位置和目录. 我的eclipse 工作空间位置是: /Users/zhangyunfei/workspace_java 我的工程名字叫:hellodemo 我的main class 的package name (包名)为: hellod…
问题: HelloWorld.java 1 package myP101; 2 3 public class HelloWorld { 4 public static void main(String[] args) { 5 System.out.println("HelloWorld!"); 6 System.out.println("请您计算一个数字的计算式:"); 7 System.out.println("计算式的结果是:" + 21 +…
有时候我们需要直接用jdk提供的java命令来执行class文件让软件运行起来,特别是很多初学者,但经常会发现如下提示: 用eclipse或用ant则没有问题. 其实原因很简单,我们忽略了2个细节. 1.java指令默认在寻找class文件的地址是通过CLASSPATH环境变量中指定的目录中寻找的. 2.我们忽略了package的影响. 第一个问题好解决: 我们直接在CLASSPATH环境变量中加入“.;”即可.“.”的意思是搜索当前目录 第二个问题看下面分析: 看下面两个类    类A    …
classpath配置的错误,所以找不到.class文件. 原先的etc/profile中的classpath配置 export CLASSPATH=$JAVA_HOME/lib/tools.jar 更改后的: export CLASSPATH=.:$JAVA_HOME/lib/tools.jar 加了个.:,当前目录的意思.…
今天写了一个java文件,类似聊天软件的东西.在eclipse里输入输出显得没感觉,于是乎就准备在cmd里输入和显示输出.如下图,我准备运行的是ChatDemo.class文件.路径是:D:\workspace\Learn\bin\com\udp . 然后我就打开cmd,傻傻的输入:cd D:\workspace\Learn\bin\com\udp 我还以为已经进入到这个文件夹呢,其实不然.应该先切换根目录进入D盘才对.如下图 这样才算进入D盘. 然后我就想着进入class文件所在位置,然后ja…
1.pack后为包名,包与系统文件夹一一对应.并且代码中的包名不包含文件包的名字,即文件名 2.javac 按照*.java 文件的所在路径进行编译,编译完成后,使用java +完整包名(包含文件包名).此时报错 找不到或无法加载主类. 3.这是因为运行class时,需要进入完整包名的第一个包所在的上一级目录,java才能将相应的class文件找出来. 例如:代码中 加载的包为:package lession.datagu.bigdata_java.week_01; 则运行时 需要首先cd进入l…
这边提供一个关于程序中含有package关键字,使用“终端”运行程序时出现“找不到或无法加载主类”,而使用Eclipse软件可以正常运行程序的可能解决办法. 例如程序名为HelloWorldTest.java,程序中含有package helloWorld语句,而该包位于javatest目录下,即javatest/helloWorld/HelloWorldTest.java. 应该在java文件所在的目录运行javac指令,即在helloWorld目录中运行javac HelloWorldTes…