如何使用vscode将一个文件的类导入Java子文件夹中的另一个文件 package-mytest; 公共级Mypckg{ 公共静态void show(){ System.out.println(“早上好”); } }

如何使用vscode将一个文件的类导入Java子文件夹中的另一个文件 package-mytest; 公共级Mypckg{ 公共静态void show(){ System.out.println(“早上好”); } },java,class,package,Java,Class,Package,两个文件都位于相同的子文件夹名称mytest中 但是当我试图运行mainfile=>Learn时,我得到了一个错误 “Learn.java:2:错误:找不到symbolimport mytest.Mypckg;”。我还尝试从学习文件中删除import mytest.Mypckg,因为两者都有相同的包,但在编译时,我得到一个错误,即“找不到符号Mypckg”。我假设这两个文件都位于名为mytest 您的代码似乎遗漏了下面添加的这一行 import mytest.Mypckg; public cl

两个文件都位于相同的子文件夹名称mytest中 但是当我试图运行mainfile=>Learn时,我得到了一个错误
“Learn.java:2:错误:找不到symbolimport mytest.Mypckg;”。我还尝试从学习文件中删除import mytest.Mypckg,因为两者都有相同的包,但在编译时,我得到一个错误,即“找不到符号Mypckg”。

我假设这两个文件都位于名为
mytest
您的代码似乎遗漏了下面添加的这一行

import mytest.Mypckg;

public class Learn {
  public static void main(String[] args) {
    System.out.println("Hello World");
    Mypckg.show();
  }
}

我假设这两个文件都位于名为
mytest
您的代码似乎遗漏了下面添加的这一行

import mytest.Mypckg;

public class Learn {
  public static void main(String[] args) {
    System.out.println("Hello World");
    Mypckg.show();
  }
}

有一个例子是对的,我没有在主文件(Learn.java)中提到包mytest。这是我的错误,但在我的计算机中,当我在两个文件中提到包mytest时,我也得到了一个错误,如“找不到符号导入mytest.Mypckg;”

最后我找到了解决办法。实际问题是我在子文件夹mytest中使用了编译方法。事实上,我试图通过在子文件夹之外获取mytest文件夹的路径来编译该文件。但罪魁祸首是另外一件事,我在编译代码中没有使用类路径(即e-cp)。因此,要在vscode中编译包文件,我们必须转到父文件夹并键入以下代码

package mytest;//added line
//import mytest.Mypckg;

public class Learn {
  public static void main(String[] args) {
    System.out.println("Hello World");
    Mypckg.show();
  }
}
还要运行我们必须使用的文件

javac -cp . mytest/Learn.java // compiler code with file path 
下面我附上了这张图片,以便更好地为我的同事们澄清。我希望我的回答能帮助那些想用vscode包编译java代码的人

有一个例子是对的,我没有在主文件(Learn.java)中提到包mytest。这是我的错误,但在我的计算机中,当我在两个文件中提到包mytest时,我也得到了一个错误,如“找不到符号导入mytest.Mypckg;”

最后我找到了解决办法。实际问题是我在子文件夹mytest中使用了编译方法。事实上,我试图通过在子文件夹之外获取mytest文件夹的路径来编译该文件。但罪魁祸首是另外一件事,我在编译代码中没有使用类路径(即e-cp)。因此,要在vscode中编译包文件,我们必须转到父文件夹并键入以下代码

package mytest;//added line
//import mytest.Mypckg;

public class Learn {
  public static void main(String[] args) {
    System.out.println("Hello World");
    Mypckg.show();
  }
}
还要运行我们必须使用的文件

javac -cp . mytest/Learn.java // compiler code with file path 
下面我附上了这张图片,以便更好地为我的同事们澄清。我希望我的回答能帮助那些想用vscode包编译java代码的人
Move
Learn
是文件夹
mytest
中的一个新子文件夹
Mypckg
。目录结构必须复制包结构。您可能还需要将子包
Mypckg
重命名为与类的
Mypckg
s名称不相等的名称,因为它可能会导致名称冲突。Move
Learn
是文件夹
mytest
中的新子文件夹
Mypckg
。目录结构必须复制包结构。您可能还需要将子包
Mypckg
重命名为与类的
Mypckg
s名称不相等的名称,因为它可能会导致名称冲突。