Home >Java >JavaBase >When running the java program, it prompts that the main class cannot be found or cannot be loaded.

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

王林
王林Original
2019-11-16 14:31:423480browse

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

Reason:

1. The java command by default searches for the address of the class file in the directory specified in the CLASSPATH environment variable.

2. We ignore the impact of package.

Solution process:

The first problem is easy to solve:

We can directly add ".;" to the CLASSPATH environment variable. "." means to search the current directory.

For the second question, please see the analysis below:

Look at the following two categories

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

The only difference between category A and category B is that there is no Define the package name.

Our project path is D:\HelloWorld. Create a src folder in the HelloWorld folder. The source code file of class B is placed in src. After compiling with javac,

will generate NewsManager.class in the src folder, as follows:

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

Execute as follows:

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

Change the source code to class A:

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

Why is it wrong after adding the package?

The path of the package in class A is org.will.app.main. According to Java regulations, we should store source files according to the path defined by the package. Class A should be placed under:

src\org\will\app\main, as follows:

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

Then we compile and execute:

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

There is still a problem, why, in fact, if you go back and look at the java books, you will find that the full name of a class It should be the package name and class name. Full name of class A: org.will.app.main.NewsManager

Okay, try again:

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

Still wrong. Why?

Look at the picture above carefully. We let the java command execute org.will.app.main.NewsManager in the main directory. In fact, it will think that the class path is:

D:\ HelloWorld\src\org\will\app\main\org\will\app\main\NewsManager, as you can see, the paths are repeated.

So, we should execute it like this:

When running the java program, it prompts that the main class cannot be found or cannot be loaded.

Success!

Recommended tutorial: Java tutorial

The above is the detailed content of When running the java program, it prompts that the main class cannot be found or cannot be loaded.. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn