标签: incompatibility

如何修复java.lang.UnsupportedClassVersionError:不支持的major.minor版本

我正在尝试使用Notepad ++作为我的一体化工具编辑,运行,编译等.

我安装了JRE,并且已将路径变量设置为.../bin目录.

当我在Notepad ++中运行"Hello world"时,我收到以下消息:

java.lang.UnsupportedClassVersionError: test_hello_world :
 Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(Unknown Source)
       .........................................
Run Code Online (Sandbox Code Playgroud)

我认为这里的问题是版本问题; 某些版本的Java可能是旧的或太新的.

  1. 我如何解决它?
  2. 我应该安装JDK,并将我的路径变量设置为JDK而不是JRE吗?
  3. .../binJRE或JDK中的变量有什么区别?

java jvm incompatibility unsupported-class-version

1532
推荐指数
25
解决办法
182万
查看次数

visual studio 2012不兼容和编辑器包无法正确加载?

我曾经使用vs 2012一段时间没有任何问题,今天当我想打开我的c#项目时,我收到此错误消息:

This program has known compatibility issues

Visual Studio 2012 Express for Windows Desktop is incompatible with this version of Windows. 
Run Code Online (Sandbox Code Playgroud)

当我单击运行程序时出现此错误:

'Microsoft.VisualStudio.Editor.Implementation.EditorPackage' package did not load correctly
Run Code Online (Sandbox Code Playgroud)

当我继续此错误消息时,另一个错误消息显示:Visual Studio已停止工作.我需要尽快让它工作,任何想法?

incompatibility visual-studio

38
推荐指数
2
解决办法
2万
查看次数

Windows上的iPhone SDK(替代解决方案)

我知道没有适用于Windows的官方SDK,这非常烦人.有没有办法在Windows计算机上开发应用程序,除了以某种方式在VMware中运行Mac OS?我知道你可以用Xcode做到这一点,但这也只适用于Mac OS X.谷歌搜索绝对没有透露任何内容.

如果我不能使用SDK或Xcode,有什么方法可以检查语法或其他东西,只需在记事本中创建我的代码并使用适当的扩展名保存它?我不知道我是否能够做到这一点,可能是因为我从未尝试过SDK而且可能永远都不会购买Mac.

windows iphone macos incompatibility

31
推荐指数
2
解决办法
13万
查看次数

Lombok 访问 jdk.compiler 的内部包与 Java-16 不兼容

只需将我的一个项目从 Java-15 升级到 16(使用此处的最新版本)。在编译使用 lombok 的项目时,例如:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.16</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)

我有点被堆栈跟踪卡住了

Caused by: java.lang.IllegalAccessError: class lombok.javac.apt.LombokProcessor (in unnamed module @0x4e670245) cannot access class com.sun.tools.javac.processing.JavacProcessingEnvironment (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.processing to unnamed module @0x4e670245
    at lombok.javac.apt.LombokProcessor.getJavacProcessingEnvironment (LombokProcessor.java:433)
    at lombok.javac.apt.LombokProcessor.init (LombokProcessor.java:92)
    at lombok.core.AnnotationProcessor$JavacDescriptor.want (AnnotationProcessor.java:160)
    at lombok.core.AnnotationProcessor.init (AnnotationProcessor.java:213)
    at lombok.launch.AnnotationProcessorHider$AnnotationProcessor.init (AnnotationProcessor.java:64)
    at com.sun.tools.javac.processing.JavacProcessingEnvironment$ProcessorState.<init> (JavacProcessingEnvironment.java:702)
    at com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors$ProcessorStateIterator.next (JavacProcessingEnvironment.java:829)
Run Code Online (Sandbox Code Playgroud)

现在,至少我认为我知道解决这个问题的技巧,但即使在尝试以下配置时 maven-compiler-plugin

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.1</version>
    <configuration>
        <source>16</source>
        <target>16</target>
        <!--                    <release>16</release>-->
        <compilerArgs>
            <arg>--enable-preview</arg>
            <arg>-Xlint:all</arg>
            <arg>--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</arg>
        </compilerArgs>
        <!--for unmappable …
Run Code Online (Sandbox Code Playgroud)

java incompatibility maven lombok java-16

31
推荐指数
5
解决办法
2万
查看次数

为什么cocos2d-iphone用户不允许使用@ 2x文件扩展名?

Cocos2d-iphone为Retina图像(和其他资产)使用-hd扩展名.在cocos2d的视网膜导说,只有依稀"一些不兼容"关于@ 2倍:

Apple使用"@ 2x"后缀,但由于某些不兼容性,cocos2d不使用该扩展名.相反,cocos2d有自己的后缀:" - hd".

警告:不建议使用"@ 2x"后缀.Apple以特殊方式处理这些图像,这可能会导致cocos2d应用程序中出现错误.

大.我感觉很清楚.

通过一个2年前关于@ 2x的错误报告,我得到了一个论坛帖子的链接,据说可以解释@ 2x的问题.但事实并非如此.我在那里找到的唯一提示是有关于@ 2x的iOS(4.0/4.1)错误,我认为这些错误不再相关.我可能错过了一些关键方面(有一些关于缓存或重复加载问题的讨论) - 毕竟线程很长.

我想知道cocos2d开发人员遇到什么具体问题,如果他使用@ 2x后缀代替-hd?

请举例说明可能会或实际上会出错的事情.

incompatibility cocos2d-iphone retina-display

21
推荐指数
2
解决办法
1484
查看次数

IE中的Javascript getters/setters?

无论出于何种原因,自定义对象的Javascript getters/setter似乎适用于任何浏览器,但IE.

IE是否有任何其他非标准机制?(与许多其他功能一样)

如果没有,是否有任何变通方法可以实现相同的功能?

javascript getter setter internet-explorer incompatibility

20
推荐指数
2
解决办法
1万
查看次数

Android studio 不一致的信息、建议和升级

每次我需要在 Android studio 中进行升级时,我都会遇到问题。这是最后一个(gradle 8.1.0,SDK 33,目标和编译版本为 33,全部安装并工作正常)。

检查现在给我

不针对最新版本的 Android

然后我将 和 都更改targetSdkVersioncompileSdk34,然后说(在检查中出现 gradle 错误之后):

看起来您刚刚在编辑器中将 targetSdkVersion 从 33 编辑为 34。请务必查阅有关由此导致的行为变化的文档。Android SDK 升级助手可以帮助安全迁移。

然后我运行 Android SDK Upgrade Assistant,并没有提及升级到 34。

尽管如此,我的项目还是以目标 34 构建。然而,Build 告诉我:

强烈建议您更新项目以使用已使用compileSdk = 34进行测试的较新的Android Gradle插件。

然后我尝试通过运行来升级 gradle,AGP upgrade assistant它说 gradle 8.1 是最新的,尽管事实上已经有 gradle 8.2.1。

以高效的方式使用 Android Studio 是相当困难的。

我究竟做错了什么?我该如何处理所有这些不一致的情况?我是否应该等待软件在检查之外警告我某些更新?

编辑

第二个问题,即使是 33:

检查给我:

比 1.7.0-alpha02 更新的 androidx.appcompat:appcompat 版本可用:1.7.0-alpha03

我更改为 alpha03,尝试构建,然后失败:

依赖项“androidx.appcompat:appcompat-resources:1.7.0-alpha03”需要依赖它的库和应用程序针对版本 34 或更高版本的 Android API 进行编译。

但它不允许我升级到 34...我发现的唯一解决方案是保留旧的 alpha02 并忽略检查。

android upgrade incompatibility gradle android-studio

19
推荐指数
1
解决办法
6887
查看次数

不支持的类文件主要版本 61

我正在尝试将Glowroot集成到我的 Java 应用程序中。不幸的是,我收到以下错误:

2022-05-13 09:25:57.777 ERROR o.g.a.w.PointcutClassFileTransformer - Unsupported class file major version 61
java.lang.IllegalArgumentException: Unsupported class file major version 61
    at org.glowroot.agent.shaded.org.objectweb.asm.ClassReader.<init>(ClassReader.java:196)
Run Code Online (Sandbox Code Playgroud)

Glowroot 和我的应用程序似乎都不使用 gradle,所以我不知道这种不兼容性从何而来。

您知道如何找到不兼容的根源以及如何修复它吗?

谢谢你!

编辑:我在版本 0.13.6 中使用 Glowroot 。

第二次编辑:似乎glowroot的版本是问题所在......

java incompatibility java-17 glowroot

18
推荐指数
3
解决办法
6万
查看次数

C和C++代码之间不兼容

给定的C代码

#include <stdio.h>
int x = 14; 
size_t check()
{
   struct x {};
   return sizeof(x); // which x
}
int main()
{
    printf("%zu",check()); 
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在我的32位实现上给出4作为C的输出,而在C++中给出代码

#include <iostream>
int x = 14;    
size_t check()
{
   struct x {};
   return sizeof(x); // which x    
}
int main()
{
    std::cout<< check(); 
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

输出1.为何如此差异?

c c++ incompatibility

17
推荐指数
3
解决办法
809
查看次数

Java方法适用于1.5但不适用1.6

我有一个应用程序,它已经在Java 1.5下运行了大约一年.我们刚刚更新了盒子并安装了Java 1.6.

在将应用程序部署到新服务器之后,我们发现应用程序在尝试转换某些XML时会抛出异常.我们无法理解为什么会发生这种情况,直到我们在本地部署并发生同样的情况.将SDK更改为v1.5后问题停止,应用程序运行正常.

这是方法的来源:

import java.io.StringWriter;
import javax.xml.transform.Result;
import javax.xml.transform.Source;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerConfigurationException;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Element;
import org.w3c.dom.Node;


   public static String xmlToString(Node node) {
    try {
        Source source = new DOMSource(node);
        StringWriter stringWriter = new StringWriter();
        Result result = new StreamResult(stringWriter);
        TransformerFactory factory = TransformerFactory.newInstance();
        Transformer transformer = factory.newTransformer();
        transformer.transform(source, result);
        return stringWriter.getBuffer().toString();
    } catch (TransformerConfigurationException e) {
        e.printStackTrace();
    } catch (TransformerException e) {
        e.printStackTrace();
    }
    return null;
   }
Run Code Online (Sandbox Code Playgroud)

它正在崩溃"transformer.transform(source,result);" 有异常的行: …

java xml incompatibility java-5 java-6

14
推荐指数
2
解决办法
2万
查看次数