我在尝试运行soapui文件时遇到此错误:
org.codehaus.groovy.control.MultipleCompilationErrorsException:
startup failed: Script7.groovy: 1: unable to resolve class com.company.ui.test.SoapUI_T11001_StockConsSecurityCurBusiDate @ line 1, column 1.
import com.company.ui.test.SoapUI_T11001_StockConsSecurityCurBusiDate
^
org.codehaus.groovy.syntax.SyntaxException: unable to resolve class com.company.ui.test.SoapUI_T11001_StockConsSecurityCurBusiDate @ line 1, column 1.
at org.codehaus.groovy.ast.ClassCodeVisitorSupport.addError(ClassCodeVisitorSupport.java:148)
at org.codehaus.groovy.control.ResolveVisitor.visitClass(ResolveVisitor.java:1206)
at org.codehaus.groovy.control.ResolveVisitor.startResolving(ResolveVisitor.java:148)
at org.codehaus.groovy.control.CompilationUnit$6.call(CompilationUnit.java:585)
at org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:832)
at org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:519)
at org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:495)
at org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:472)
at groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:292)
at groovy.lang.GroovyShell.parseClass(GroovyShell.java:727)
at groovy.lang.GroovyShell.parse(GroovyShell.java:739)
at groovy.lang.GroovyShell.parse(GroovyShell.java:766)
at groovy.lang.GroovyShell.parse(GroovyShell.java:757)
at com.eviware.soapui.support.scripting.groovy.SoapUIGroovyScriptEngine.compile(SoapUIGroovyScriptEngine.java:141)
at com.eviware.soapui.support.scripting.groovy.SoapUIGroovyScriptEngine.run(SoapUIGroovyScriptEngine.java:90)
at com.eviware.soapui.impl.wsdl.teststeps.WsdlGroovyScriptTestStep.run(WsdlGroovyScriptTestStep.java:148)
at com.eviware.soapui.impl.wsdl.panels.teststeps.GroovyScriptStepDesktopPanel$RunAction$1.run(GroovyScriptStepDesktopPanel.java:274)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
1 error
soapUI代码:
import com.company.ui.test.SoapUI_T11001_StockConsSecurityCurBusiDate
def env = testRunner.testCase.testSuite.project.getPropertyValue("env")
def baseUrl = testRunner.testCase.testSuite.project.getPropertyValue("baseUrl")
log.info("The baseurl is "+baseUrl)
log.info("The env under test is "+env)
SoapUI_T11001_StockConsSecurityCurBusiDate testStep = new SoapUI_T11001_StockConsSecurityCurBusiDate();
testStep.init(baseUrl);
testStep.execute(null);
日食代码:
package com.company.ui.test;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import com.eviware.soapui.model.support.AbstractSubmitContext;
import com.eviware.soapui.model.testsuite.TestRunner;
public class SoapUI_T11001_StockConsSecurityCurBusiDate extends BaseSelenium{
public static void main(final String[] args){
final SoapUI_T11001_StockConsSecurityCurBusiDate ico = new SoapUI_T11001_StockConsSecurityCurBusiDate();
try{
ico.init("https://avncedevn1.nam.nsroot.net:17620/", false);
}catch(Exception e){
// TODO Auto-generated catch block
e.printStackTrace();
}
ico.execute(null);
}
//...code....
}
如何解决此错误?我不确定导致错误的是什么。
答案 0 :(得分:8)
答案 1 :(得分:3)
可能的原因之一是jdk版本太高。例如,使用jdk 16 构建Apache Kafka 的源代码会抛出此错误。使用 jdk 11 没问题。
答案 2 :(得分:2)
你是否安装了grail和groovy插件?如果是这样,请尝试卸载此插件。我有相同的错误消息并卸载插件,重启IDE为我工作。
答案 3 :(得分:1)
使用Eclipse Juno(Kepler Release)Build id:20121114-2344,我发现了类似的问题:
org.codehaus.groovy.control.multiplecompilationerrorsexception startup failed unable to resolve class Chart
类图表是我用于图表的一些实用程序的容器类。
我在Eclipse之外尝试过,使用Groovy 2.0控制台,相同的代码段工作正常。在抓了我大约3个小时之后,我通过添加以下
解决了这个问题import excel.Chart
在调用类中,main()具有“new Chart()
”因此获得投诉,一旦添加,错误就消失了。更奇怪的是,在传递错误之后,我删除了那个导入,仍然没有更多的投诉! (我的所有脚本/类都在同一个包excel
下,我想不需要这样的import语句。)
投诉的一个症状是输出bin文件夹中没有生成Chart.class。一旦投诉消失,Chart.class就会出现在那里。
我想这可能是Eclipse / Groovy插件的错误(我使用Juno的Groovy插件)。
希望我的理解是正确的,并且有所帮助。
答案 4 :(得分:1)
如果您想在首次安装后在Android Studio上创建一个新项目,可能您将应用程序名称(包括(')符号)写为撇号。
例如,我尝试将名称设置为:“ Henry's Game”,但是撇号导致Android Studio由于此错误而无法加载:
Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
因此,只需更改应用程序的名称,并仅使用拉丁字母语言(例如英语)即可。
要修复:转到您的Android项目树并找到Gradle脚本> settings.gradle>更改名称:
rootProject.name='Henry Game'
include ':app'
答案 5 :(得分:0)
转到“文件”,然后单击“使缓存无效/重新启动”。 Android studio将清除缓存,然后将其重新启动而不会出现任何错误。
希望这个答案对您有帮助:)
答案 6 :(得分:0)
答案 7 :(得分:0)
对于这个问题,您可能还会遇到package 命名from gsp,就像我一样。在 build/gsptmp 文件夹中,Grails 4.x.x 创建临时 gsp 文件以链接它们引用的类。由于包名称的更改,在我的情况下它没有这样做。在战争构建期间尝试使用命令 grails war --stacktrace
!
以前是<%@ page import="bv.BankReconciliationController" %>
但文件夹 bv 已重命名为 factoring。
所以,解决的办法是将导入更改为
<%@ page import="factoring.BankReconciliationController" %>
并且成功了 :)
答案 8 :(得分:0)
我也遇到了同样的情况并尝试了这里和其他地方的所有解决方案,最后我删除了我的 .gradle 和 gradle 两个文件夹和 android studio 缓存,然后再次打开工作室并重建项目,它的工作原理在那之后很好并使用了最新的 gradle 版本,之前它正在选择旧版本并导致问题。