[英]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.