繁体   English   中英

我在哪里将类放在CLASSPATH上?

[英]Where do I put classes on CLASSPATH?

我将Ref.java编译为ref.class并将其放在下面指定的目录中。


我花了很多时间弄清楚如何使用CLASSPATH。 如果有人能指出我的(可能是愚蠢的)错误,我将非常高兴。

我有一个类“ Ref.java”,如下所示:

package utility.myapp;  
public class Ref {  
static public void print(String s)  
{  
// do something here  
}  
}  

我的CLASSPATH包括:

C:\Eclipse\classes

我将类存储为文件:

C:\Eclipse\classes\utility\myapp\Ref.class

从我的主要项目中,我导入为:

import utility.myapp.*

在下面的文件“ Main.java”中:

package com.reftest;
import android.app.Activity;
import android.os.Bundle;
import utility.myapp.*;
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
}
}

Eclipse说:

The import utility cannot be resolved

variation on this theme I could think of, but still no joy. 我已经尝试过可以想到的这个主题的变体,但仍然没有喜悦。
任何帮助表示赞赏。

顺便说一句-我没有遗漏或简化任何事情:我试图构建这个实际且主要是琐碎的项目,只是为了使结构正确。

这听起来对我来说是完全错误的。

C:\Eclipse\classes

是完全错误的。 您应该创建一个新项目,.class文件最终的位置应该相对于项目根目录。

您应该能够右键单击Eclipse项目,并设置JAR文件所在的目录等。Eclipse应该告诉您在编译.java时将.class文件放入的默认位置; 确保它相对于您的项目根目录。

您最好不要使用环境变量CLASSPATH。 那是错误的方法。

您需要确保已编译的类文件位于CLASSPATH

尝试将Ref.class放入

C:\Eclipse\classes\utility\myapp\

感谢所有提供意见的人。 作为对社区的服务,我将在下面学到的所有知识进行合并。

两种情况下使用CLASSPATH。
1.在构建/调试周期中(在Eclipse内部)
2.独立运行应用程序(Eclipse外部)。

对于上述#2,请查询环境变量CLASSPATH。 它是一个用分号分隔的目录列表,在任何地方都有详细记录。 设置它与Eclipse的干扰-它被忽略。

对于#1,类路径存储在工作区中项目根目录中的“ .classpath”文件中。 要为类搜索添加外部目录,请添加以下格式的行:

<classpathentry kind="lib" path="yourclasspath"/>

我的.classpath条目看起来像这样

<classpathentry kind="lib" path="C:/Eclipse/classes"/>  

右键单击项目,然后选择Properties-> Java Build Path,也可以在Eclipse GUI中进行设置。 然后选择添加外部类文件夹,然后输入要存储类的目录。

希望这对其他人有用。

-约翰

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM