- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我向项目添加了简单的注释驱动方面,IntelliJ 无法编译它:
annotation type patterns are only supported at Java 5 compliance level or above
请建议,应该在哪里配置编译级别(在项目设置中,整个项目和所有模块都设置为 Java 6),在设置->aspectj weaver 中,只能启用 weaver 并查看方面列表。
UPD 该问题与 OpenJDK 有关,因为aspectJ weaver 插件无法正确识别其版本。补丁已提交给维护者。
--- src/common/se/expertsystem/intellij/PluginUtils.java.orig 2012-04-11 14:03:35.000000000 +0300
+++ src/common/se/expertsystem/intellij/PluginUtils.java 2012-04-11 14:47:11.000000000 +0300
@@ -31,32 +31,34 @@
*/
package se.expertsystem.intellij;
+import com.intellij.openapi.application.ApplicationInfo;
+import com.intellij.openapi.application.ApplicationManager;
+import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.module.Module;
import com.intellij.openapi.module.ModuleManager;
-import com.intellij.openapi.roots.ModuleRootManager;
-import com.intellij.openapi.roots.OrderRootType;
-import com.intellij.openapi.util.io.FileUtil;
-import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.progress.ProgressIndicator;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.project.Project;
-import com.intellij.openapi.application.ApplicationInfo;
-import com.intellij.openapi.application.ApplicationManager;
-import com.intellij.openapi.vfs.VirtualFile;
+import com.intellij.openapi.roots.ModuleRootManager;
+import com.intellij.openapi.roots.OrderRootType;
+import com.intellij.openapi.util.io.FileUtil;
import com.intellij.openapi.vfs.VfsUtil;
+import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.util.ActionRunner;
-import java.util.List;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.io.IOException;
import java.io.File;
-import java.lang.reflect.Method;
+import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
-import java.net.URL;
+import java.lang.reflect.Method;
+import java.net.MalformedURLException;
import java.net.URI;
import java.net.URISyntaxException;
-import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
/**
* Class containing useful utility methods for IntelliJ IDEA plugins.
@@ -68,6 +70,8 @@
private static final Class[] NO_PARAMETERS = new Class[] {};
+ private static final Pattern jdkVersionResolver = Pattern.compile("(java|openjdk)\\s+version\\s+\"(\\d+)\\.(\\d+)");
+
/**
* Find classpath for module. Returns list of <code>File</code>s.
* @param project Project to get classpath for.
@@ -296,13 +300,21 @@
*/
public static boolean isJava5(Module module) {
final String versionString = getJdkVersionString(module); // Example: java version "1.5.0_07"
- if(versionString.startsWith("java version \"1.") && versionString.length() > "java version \"1.".length())
- return versionString.charAt("java version \"1.".length()) >= '5';
- LOG.error("Unparsable version string: " + versionString);
- return false;
+ final Matcher versionMatcher = jdkVersionResolver.matcher(versionString);
+ if (!versionMatcher.find()) {
+ LOG.error("Unparsable version string (regex failed): " + versionString);
+ return false;
+ } else if (!("1".equals(versionMatcher.group(2))
+ && versionMatcher.group(3).charAt(0) >= '5')) {
+ LOG.error("Version invalid: major "+versionMatcher.group(2)+
+ " , minor "+versionMatcher.group(3));
+ return false;
+ }
+ LOG.info("Detected JDK: "+versionString);
+ return true;
}
- /////////////////////////////////////////////////////////////////////////////
+ /////////////////////////////////////////////////////////////////////////////
// Methods for progress indication
/////////////////////////////////////////////////////////////////////////////
@@ -382,4 +394,4 @@
return modules;
}
}
-}
\ No newline at end of file
+}
最佳答案
尝试
source="1.5"
插入到 build.xml 中的 iajc 任务中
关于intellij-idea - 在intellij idea中设置aspectj weaver的编译级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10103994/
所以看起来为了在 weaver.ini 中传递一些东西插件本身需要一个 Moose 属性。所以如果我在 weaver.ini 中有这样的东西 [Acknowledgements] contributo
我在使用 spring 和使用 AspectJ 的 Load-Time-Weaving 时遇到了一些奇怪的问题。在我的一个 Apsect 中,我想对类 org.springframework.flex
需要一些关于加载时间编织器的帮助。我的项目已经在 apache tomcat 7.0.42 中运行;但是,每次我将 tomcat 版本更改为 7.0.55 时,都会出现此错误 SEVERE: Cont
我使用 Dream Weaver CS5 Version 11.0 Build 4964 开发了一个简单的 PHP 网页。 我的网页由一个表格 (TABLE) 组成,该表格包含 10 个表格行 (TR
请问spring类加载器为什么在时多次加载java类?在xml配置中使用? 我可以看到 spring 正在使用 org.springframework.context.support.ContextT
我有一个“工作”AspectJ Weaver 模式,用于匹配特定类型(项目)内的所有 setter : public pointcut setter(Item item) : target(i
我有一些 Moose 类,它们定义了几小组相关方法。我想让这些组在 POD 包中显而易见。 我将 Dist::Zilla 和 Pod::Weaver 与 =method 命令结合使用。是否可以在我的=
您好,我正在尝试使用正则表达式在 Dreamweaver 中查找和替换所有内容。 我的 CSS: .class1{ position:relative; float:left; margi
aspectj-weaver.jar 是做什么的?它的常见用途是什么? 最佳答案 jar 在 aspectj 中用于面向方面的编程或 AOP。 编织器是实际“编织”在一起的部分,该部分使用要在每个实例
这是我的 xml,首先我需要检查 'RecordsEntries' 不应该是 'null',然后 RecordEntry 不应该是 null后跟映射代码 false 12
我有一些相当简单的代码,我想响应: Title Article text blah blah ... CSS 代码用于将文本放在左侧的列中,将图像放在标题下方的右侧: .outlook-t
当我创建我的 Spring 项目时,我似乎收到了一堆这样的警告。该项目使用编译时编织和各种 Spring 注释,如 Transactional、Autowired 和 Configurable。 我有
在我们的项目中,我们正在尝试从 Spring 标准 AOP 迁移到 AspectJ,正如 this 等许多地方所解释的那样。 (我们需要使一些私有(private)和 protected 方法具有事务
我在 Eclipse 4.3 中设置一个 Spring 3.2.3 + Hibernate 4 项目。 当我添加代码时 在我的上下文中,我开始在每个 bean 中收到以下错误: Build path
我正在使用 Spring AOP 和提供的默认 DefaultContextLoadTimeWeaver。我希望能够编织持久实体并且我知道我必须设置编织器选项(来自控制台的警告): warning j
我使用 Spring 5、Java 10 和 Gradle 4.8 我面临以下问题: java.lang.ClassNotFoundException: org.aspectj.util.Partia
这个问题不太可能帮助任何 future 的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况相关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visit
我已经多次在我的应用程序中安装 Fody,但仍然出现此错误,谁能告诉我为什么会这样?我用的是最新版的Visual Studio和最新版的Framework 最佳答案 有时(由于未知原因)FodyWea
我使用 Pod::Weaver与 Dist::Zilla .它为我做了几件好事。它会自动添加 POD 部分 VERSION、AUTHOR、LICENSE,在我的源代码中我可以使用简单的 POD 语法,
我在我的项目中使用了 aspectJ 并在我的 POM 文件中添加了依赖项。当我在 Websphere Application Server Liberty Profile 上运行我的应用程序时,库文
我是一名优秀的程序员,十分优秀!