OSX上的Java编译错误,但Windows上没有
我在OSX上遇到了Java编译错误的问题,但在Windows7上一切正常 在这两种平台上,我都将IntelliJ与Java 1.70 u80 SDK和Maven 3.3.9(来自IntelliJ的捆绑包)一起使用 OSX上出现的错误是 不兼容类型:无法将迭代器转换为迭代器 对于代码行,如下所示OSX上的Java编译错误,但Windows上没有,java,macos,maven-3,Java,Macos,Maven 3,我在OSX上遇到了Java编译错误的问题,但在Windows7上一切正常 在这两种平台上,我都将IntelliJ与Java 1.70 u80 SDK和Maven 3.3.9(来自IntelliJ的捆绑包)一起使用 OSX上出现的错误是 不兼容类型:无法将迭代器转换为迭代器 对于代码行,如下所示 Iterator<Node> it = sh.extractAllHeaderElements(); while (it.hasNext()) { ... } 问题似乎出现在使用sh
Iterator<Node> it = sh.extractAllHeaderElements();
while (it.hasNext())
{
...
}
问题似乎出现在使用
sh.extractAllHeaderElements()返回的迭代器中
在mac平台上运行时,它返回的不是迭代器,而是其他类型的迭代器。因此,在迭代器接口中使用通配符将起作用
为此,只需替换迭代器it=sh.extractAllHeaderElements()使用it=sh.extractAllHeaderElements()迭代器编写>代码
您能在页面顶部发布完整的代码文件,包括导入吗?尝试更改此行Iterator it=sh.extractAllHeaderElements()
toIterator it=(Iterator)sh.extractAllHeaderElements()代码>我猜两个源文件之间的导入是不同的。试着检查一下。@SteelToe我已经将导入添加到了OP中。完整的代码太大了,不能在这里发布(1000多行),我会有点担心导入中的*
字符。尝试将它们替换为您正在使用的实际导入。
import java.io.*;
import java.lang.management.ManagementFactory;
import java.net.URI;
import java.util.*;
import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;
import javax.servlet.ServletRequest;
import javax.xml.bind.Element;
import javax.xml.namespace.QName;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.soap.SOAPBody;
import javax.xml.soap.SOAPElement;
import javax.xml.soap.SOAPEnvelope;
import javax.xml.soap.SOAPException;
import javax.xml.soap.SOAPHeader;
import javax.xml.soap.SOAPHeaderElement;
import javax.xml.soap.SOAPMessage;
import javax.xml.soap.SOAPPart;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.ws.handler.MessageContext;
import javax.xml.ws.handler.soap.SOAPHandler;
import javax.xml.ws.handler.soap.SOAPMessageContext;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nhindirect.xd.soap.type.MetadataLevelEnum;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;