㈠ java写一个行编译器,编译时提示找不到源,问题在string的用法中,是什么原因
把环境变量path,classpath里多余的东西删掉,path里加%JAVA_HOME%\bin;(要确定JAVA_HOME是对的),classpath里先要加上“.;”,再加上这几个包:%JAVA_HOME%\jre\lib\rt.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar
不知道你的情况是不是和我当初遇到的一样,试试看!
㈡ 求解 java动态编译找不到类,往各位大虾指导
参照网上其他童鞋的例子与介绍,修改了一下:
import java.io.IOException;
import java.lang.reflect.Method;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.Arrays;
import javax.tools.JavaCompiler;
import javax.tools.JavaCompiler.CompilationTask;
import javax.tools.JavaFileObject;
import javax.tools.SimpleJavaFileObject;
import javax.tools.StandardJavaFileManager;
import javax.tools.ToolProvider;
/**
* 动态编译Java 源文件
*
* @author shenshouer
*
*/
public class CompilerTest {
public static void main(String[] args) throws Exception {
String source = "public class Main { " + "public static void main(String[]args) {"
+ "System.out.println(\"Hello World!\");" + "} " + "}";
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null);
StringSourceJavaObject sourceObject = new CompilerTest.StringSourceJavaObject("Main",
source);
Iterable<? extends JavaFileObject> fileObjects = Arrays.asList(sourceObject);
// 获取编译类根路径,不然会报找不到类的错误
String path = Class.class.getClass().getResource("/").getPath();
Iterable< String> options = Arrays.asList("-d", path);
// 增加options参数
// CompilationTask task = compiler.getTask(null, fileManager, null, null, null, fileObjects);
CompilationTask task = compiler.getTask(null, fileManager, null, options, null, fileObjects);
boolean result = task.call();
if (result) {
System.out.println("编译成功。");
ClassLoader loader = CompilerTest.class.getClassLoader();
try {
Class<?> clazz = loader.loadClass("Main");
Method method = clazz.getMethod("main", String[].class);
// 修改调用参数,不然会报参数个数不对
// Object value = method.invoke(null, new Object[] {});
Object value = method.invoke(null, new Object[] {new String[]{}});
System.out.println(value);
} catch (Exception e) {
e.printStackTrace();
}
}
}
static class StringSourceJavaObject extends SimpleJavaFileObject {
private String content = null;
public StringSourceJavaObject(String name, String content) throws URISyntaxException {
super(URI.create("string:///" + name.replace('.', '/') + Kind.SOURCE.extension),
Kind.SOURCE);
this.content = content;
}
public CharSequence getCharContent(boolean ignoreEncodingErrors) throws IOException {
return content;
}
}
}
㈢ visual studio 2010c++编程无法找到源文件,就是无法打开iostream,cout也说未定义,怎没回事,急急急
你建的是*.c文件?
又或者安装时某些参数没选好。
网上有说设置编译器什么的,过程如下
Settings-Compiler and debugger-选择你要使用的编译器-Other Settings-Compiler logging选择Full command line
我一直找不到settings(设置)在哪。
你试试用C语言的scanf()H和printf() ,看看呢不能输入输出,如果这也不能,重装吧。
㈣ 为什么安装完VC6.0后没有源文件 改怎么办啊
调整一下directory,设置成你的安装路径,估计是编译器找不到路径所致
㈤ vc6.0的include里有指定的文件,编译器却找不到。
1、检查编译器制定的搜索目录是否有这个文件所在目录;
2、检查该资源文件中的资源,是否符合资源文件的书写规范,否则编译器报找不到。
㈥ 编译成功 Java 提示找不到或无法加载主类
这个问题分析如下
一、java执行class文件是根据CLASSPATH指定的地方来找,不是我们理解当前目录。如果希望它查询当前目录,需要在CLASSPATH中加入“.;”,代表当前目录。所以,如果是这个问题你的方案是在 classpath中 加上 .; 如图:
㈦ 为什么编译提示找不到头文件
Tools->Options->Directories,看看Include files的目录配置是否正确。