zoukankan      html  css  js  c++  java
  • The declared package does not match the expected package Java

    今天使用vscode 编写java代码做测试时候,发现这个问题,大概总结一下。

    目录结构

    bao -> Point.java

    test.java

    package bao;
    
    public class Point<T> {// 此处可以随便写标识符号
        private T x;
        private T y;
    
        public void setX(T x) {// 作为参数
            this.x = x;
        }
    
        public void setY(T y) {
            this.y = y;
        }
    
        public T getX() {// 作为返回值
            return this.x;
        }
    
        public T getY() {
            return this.y;
        }
    };
    import bao.Point;
    
    public class test {
        public static void main(String[] args) {
            //IntegerPoint使用  
            Point<Integer> p = new Point<Integer>();   
            p.setX(new Integer(100)) ;   
            System.out.println(p.getX());    
      
            //FloatPoint使用  
            // Point<Float> p = new Point<Float>();   
            // p.setX(new Float(100.12f));   
            // System.out.println(p.getX());   
        }
    }

    编译报错:The declared package does not match the expected package bao Java

    大概的原因是编译器在bao这个包名下找不到Point.java, 所以需要在vscode中把根目录加入到java的sourcepath

    使得编译器在寻找Point.java时,以项目根目录作为基准寻找路径,这样就编译通过了。

    另外还有, 有的时候你在主方法里run或者debug的时候,编译器虽然能输出最后结果,但还是会报"Build failed xxxxx",我查了下官网,说是

    然后一看,原来我现在的项目路径下包含许多子项目,只要有一个子项目的文件存在语法错误,我这个项目编译时就会报“build failed”,所以以后用vscode详见项目最好还是以每个项目作为根目录来建。

  • 相关阅读:
    「总结」容斥。二.反演原理 3.约数容斥
    「总结」容斥。二.反演原理 2.组合容斥
    「总结」容斥。二.反演原理 1.子集容斥
    「总结」容斥。一.容斥原理
    「考试」num (破800纪念)
    「刷题」 网络
    「考试」 Or
    「考试」weight
    「刷题」GERALD07加强版
    「刷题」Triple
  • 原文地址:https://www.cnblogs.com/linux-centos/p/10784037.html
Copyright © 2011-2022 走看看