问题标签 [compilationunit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1594 浏览

java - java.lang.OutOfMemoryError:org.eclipse.jdt.core.dom.CompilationUnit 上的 Java 堆空间

当我处理一个或几个 java 文件时,我没有问题,但如果 java 的数量在 90 左右,我会得到“ java.lang.OutOfMemoryError: Java heap space”。我在 Eclipse 中有默认 VM 参数:

为每个 java 文件执行此代码。它在倒数第二行抛出异常。

错误:

0 投票
2 回答
2075 浏览

c++ - 未解决的符号错误

我正在使用 Visual Studio 2012 完成编程原理和实践中的练习。尝试编译下面的源代码时,我遇到了链接器错误:

未解析的符号 int foo。

我不明白为什么该符号未解析。

我的.h

我的.cpp

使用.cpp

0 投票
1 回答
4391 浏览

java - 从 JAVA 中提取 AST 并将 AST 打印到文件中

我是 Java 编程语言的初学者。我想从 java 源代码中提取 AST 并将 AST 打印到文件或标准输出中。

我按照本教程学习了如何使用 AST。 http://www.programcreek.com/2011/01/a-complete-standalone-example-of-astparser/

因此,据我所知,我到目前为止的代码如下。

我尝试使用以下代码片段将其打印到标准输出,但它没有给我预期的结果,

如果有人可以帮助我将 AST 打印到文件中,那将是一个很大的帮助。

提前致谢。

0 投票
1 回答
268 浏览

java - Eclipse 从 String 创建 CompilationUnit 句柄

我的问题类似于Eclipse create CompilationUnit from .java 文件,但是我没有文件,我想为具有给定内容的 CompilationUnit 创建一个句柄,而无需实际创建底层资源。

实际目标是获取 type 的对象org.eclipse.jdt.core.IType,因此 usingsetSource(char[] source)并不能解决问题,因为生成的 AST 中没有绑定。

我是否必须创建一个临时文件来满足我的要求?

0 投票
1 回答
1720 浏览

java - JavaParser 不更新源文件

我正在使用JavaParser并关注其 Wiki。问题是即使我更改方法的名称并向其添加参数,文件也不会更新。换言之,不会保存更改。当我System.out.println更改CompilationUnit时,它会打印更改,但这些更改根本不会影响源文件。

有什么类似的东西CompilationUnit.update()还是我错过了什么?

我在 Wiki 中使用的示例:

编辑: 这是解决方案;添加下线;


更改行下也可以使用特殊字符(例如“ş,ö,ü ...)

0 投票
0 回答
205 浏览

c# - 无法解析 roslyn 中的代码片段

我正在尝试从小段代码动态构建 ac# 类。我们有一个窗口,用户可以在其中输入 c# 代码(有效或无效),我们将这些字符串解析为 roslyn。我最近在使用这个时发现了一个问题:

结果在VB中编译时,如果语句是多行的,它将内联所有文本,即使在c#中也是如此。

然后我创建了一个帮助类将其解析为一个虚拟类和方法以获取已解析语句的列表。

这是我的问题。

如果我的应用程序中有 3 个语句。

然后

最后

它会自动关闭第一条语句的花括号,因此我失去了作用域。

有没有办法解析无效代码并避免这种行为?

我知道内联代码在 c# 中是有效的,但是我们在 VB 中面临同样的问题。

谢谢你的帮助 :)

0 投票
1 回答
49 浏览

java - JavaCompiler 在重新定义 Java 类时没有发现错误。

在我学习 Java 的过程中,我尝试了这段编译并运行成功的代码。谁能解释一下为什么编译器没有产生任何错误?我导入了包含 java.util>Scanner 的完整包,所以不应该有一个错误,即 Scanner 已经在 util 包中定义并且我正在尝试在这里重新定义它?

我的 Java 基础知识不是很清楚,所以如果这似乎完全是一个菜鸟的问题,并且在这个论坛上没有类似的问题,所以我想最好问一下。

0 投票
1 回答
128 浏览

java - 如何在 CompilationUnit 中遇到有关导入的问题

我想检测有关导入语句的错误。但编译单元似乎检测到类声明本身内部的错误。

我正在试验的代码如下:

我没有在我的项目中添加 apache commons。我可以在我的 astview 中看到两个错误,如下所示。
1) E[90, 10] The import org.apache cannot be resolved
2)E[323, 2] Syntax error, insert ";" to complete FieldDeclaration

但是当我尝试打印使用CompilationUnit它的问题数量时,它只返回一个,消息如下
1)Syntax error, insert ";" to complete FieldDeclaration

如何使用编译单元以编程方式获取导入错误?或者有什么办法我可以做到这一点?提前致谢。

0 投票
2 回答
51 浏览

c++ - 编译器和链接器如何处理类和函数

有人可以帮我理解,为什么我可以在两个不同的编译单元中拥有相同的类而不会出现链接器错误,但在不同的编译单元中却没有相同的功能?

提前谢谢了。

0 投票
2 回答
165 浏览

c++ - 使用一个全局变量来初始化不同编译单元中的其他全局变量

我有一个共享库,它导出一个从全局变量返回字符串的函数,如下所示:

测试.h:

测试.cpp:

在我的主程序(链接到共享库)中,我定义了一个全局变量(如果它是静态的,它是否仍称为“全局”变量?)它使用该函数来初始化一个对象:

主.cpp:

据我了解,这应该是未定义的行为,因为在创建 struct 对象时,变量“name”不一定被初始化,对吗?如果是这样,如果我在“test_get_name”中移动“name”变量是否有效?: