簡體   English   中英

Java不編譯我的源代碼

[英]Java not compiling my source code

我無法在命令行中編譯我的課程。 我一定會錯過一些非常明顯的東西,但我無法弄清楚。

在這里我的設置...

環境設置(Win 8.1):

JAVA_HOME   C:\Program Files\Java\jdk1.8.0_11

Path    %JAVA_HOME%\bin;

我有“ javaTest”文件夾,其中包含兩個Java文件Run.java和Animal.java。 我可以編譯Animal.java,但是在編譯“ Run.java”文件時遇到錯誤。

命令行:

C:\>cd C:\javaTest

C:\javaTest>dir
 Volume in drive C is Local Disk

Directory of C:\javaTest

01/10/2014  10:37 AM    <DIR>          .
01/10/2014  10:37 AM    <DIR>          ..
01/10/2014  10:37 AM               337 Animal.java
01/10/2014  10:36 AM               230 Run.java
               2 File(s)            567 bytes
               2 Dir(s)  42,796,736,512 bytes free

C:\javaTest>javac Animal.java (**note: this gets executed without problems**)

C:\javaTest>javac Run.java
Run.java:5: error: cannot find symbol
                Animal a1 = new Animal();
                ^
  symbol:   class Animal
  location: class Run
Run.java:5: error: cannot find symbol
                Animal a1 = new Animal();
                                ^
  symbol:   class Animal
  location: class Run
Run.java:9: error: cannot find symbol
                Animal a2 = new Animal("Animal2");
                ^
  symbol:   class Animal
  location: class Run
Run.java:9: error: cannot find symbol
                Animal a2 = new Animal("Animal2");
                                ^
  symbol:   class Animal
  location: class Run
4 errors

這是實際的代碼:

Run.java

    public class Run{

        public static void main(String[] args){

            Animal a1 = new Animal();
            a1.setName("Animal1");
            a1.showName();

            Animal a2 = new Animal("Animal2");      
            System.out.println(a2.getName());

        }

    }

Animal.java

    public class Animal{

        private String name;

        public Animal() {

        }
        public Animal(String name) {
            this.name = name;

        }

        public void setName(String name){
            this.name = name;
        }

        public String getName(){
            return this.name;       
        }


        public void showName(){
            System.out.println(this.name);      
        }

    }

我可以從Eclipse運行完全相同的代碼,而不會出現任何問題。 所以我不確定我缺少什么...

您必須將實際文件夾添加到類路徑:

javac -cp .\;%CLASSPATH% Animal.java 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM