找不到程序包什么回事

img


为什么会找不到程序包,环境配置也配了。包也没什么问题。但就是找不到程序包。救命

你这样单独编译 并不能把你引入的类也一起编译
需要使用 javac -d 参数,指定编译输出目录,然后依赖类也一起编译

javac -d classes 目录1/主类名.java  目录2/依赖的类名.java
// 运行
java -cp classes 目录1.主类名
不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7512687
  • 这篇博客你也可以参考下:什么是递归?简单易懂,看完包会。递归的应用场景和调用机制以及能解决的问题,递归调用规则讲解全面详细且易懂。
  • 除此之外, 这篇博客: 为什么前端语言会有兼容性问题?而后端语言却没有兼容性问题。附前端兼容性问题的通用解决办法。中的 为什么会有兼容性问题。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或者直接跳转源博客中阅读:

      前端会出现兼容性问题,主要是因为前端代码的运行环境不同。
      前端代码的运行环境是浏览器,前端写出来的代码,开发阶段在谷歌上进行测试能正常运行,在IE浏览器可能样式、功能就无法达到预期的效果;通过如果开发阶段在IE上进行测试运行,那很可能在其他浏览器上会存在大小不一的问题。
      什么是兼容性?兼容性就是前端的代码所有浏览器都能正常解释执行并渲染出符合自己预期的页面

    这里的兼容性指的是前端的兼容性,这里的前端代码指css、js这些代码,html不需要兼容,每个浏览器都是统一的,所以不需要兼容,大家处理方式都一样。

      后端根本就不存在兼容性问题,因为他的运行环境都只有一种。java就是JVM,python就是python解释器,不需要python也能在JVM上运行(不需要也没必要)。
      每一个浏览器的开发团队都不同,他们对前端都有自己的团队理解,都尽量将自己的浏览器做的有特性,被更多人使用。这就导致,虽然都是浏览器,但是不同的浏览器对CSS、JS的解释执行是不同的。比如我们要阻止事件冒泡,IE得这么写event.cancelBubble=true,放到谷歌,谷歌不认识,还可能会报错,因为谷歌用event.stopPropagation()阻止冒泡。同样谷歌的event.stopPropagation()放到IE,IE也不认识。为了兼容IE和谷歌,我们得像下面这么写。

    // 只有IE浏览器认识,火狐、谷歌不认识
    event.cancelBubble=true
    // 谷歌、火狐都认识,IE不认识。
    event.stopPropagation()
    
    // 兼容IE、火狐、谷歌写法
    // 如果存在event.stopPropagation,则执行event.stopPropagation()
    if(event.stopPropagation){
     event.stopPropagation();            
    }else{
    	// 否则为执行IE浏览器组织冒泡行为的代码
        event.cancaleBubble==true;          
    }
    

      本来各大浏览器开发团队都遵循W3C的规范,就完全不存在兼容性问题。但是为了突出自己浏览器的个性,开发团队也会偏离规范进行开发,导致兼容性问题。这就是为什么早期jQuery那么火的原因之一,他底层的实现都加了一层兼容性处理,这样开发人员使用jQuery就不用考虑兼容性问题了,代码写起来就没有这么多if else分支处理。

  • 您还可以看一下 陈槐老师的零基础新手入门软件测试必知必会课程中的 系统讲解验收测试定义和验收需要注意的事项小节, 巩固相关知识点

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^