Does drools-6.5 has backward compatibility of drools-2.5? - java-8

We are using drools-decisiontables-2.1.jar to generate XMLs from Rulesheets(.XLS file). And, using drools-core-2.5 version to read those XMLs.
Now, we are upgrading from weblogic11g/Java6 to weblogic12c/Java8 and drools-2.5 is failing.
JARs used in our project: drools-base-2.5.jar, drools-core-2.5.jar, drools-io-2.5.jar, drools-java-2.5.jar, drools-smf-2.5.jar
Issue we are facing in our code:
RuleBaseLoader loadFromInputStream drools 2.5 compilation error on Java8 and weblogic12c
Does drools-6.5 JARs has backward compatibility of drools-2.x for XMLs so that we can easily upgrade to newer versions of drools ?
Thanks in advance !

Related

Why does maven X.X.X-SNAPSHOT not satisfy a version range starting with X.X.X?

I work on a large set of Maven-built services with a parent pom that uses a BOM using version ranges. In general, this works perfectly fine, when the available version is NOT a snapshot.
I'm now working on some new code that uses the same mechanism, but the only available version is a SNAPSHOT version. When I run the Maven build, it says "no versions available".
My version range is "[2.9.0, 2.9.100]". The available version is 2.9.0-SNAPSHOT, and that fails.
In a related version, using a version range of "[2.7.0, 2.7.100)", when the available version is 2.7.0 or 2.7.1, this works fine.
From what I've read, I believe it implies that "2.9.0-SNAPSHOT" is "more than" 2.9.0, so this should work. Just in case, I tried an experiment of changing the range to "[2.8.9, 2.9.100)", but it still says there is no version available.
I'm aware of the advice that "version ranges are not recommended". In general, this works for us. Do snapshots not work with version ranges?
I'm presently using Maven v3.8.2.
Update:
Note that if I change the version range to "[2.9.0-SNAPSHOT, 2.9.100-SNAPSHOT)", it does accept the "2.9.0-SNAPSHOT" version. I'm not sure if that helps in the long run.
Here's what you can do: java -jar maven-artifact.jar n1 n2 n3 ... nx
The maven-artifact jar that's part of every Maven distribution is also an executable jar, where you can add version numbers. E.g.
D:\>"%JAVA_HOME%"\bin\java -jar d:\apache-maven-3.8.1\lib\maven-artifact-3.8.1.jar 2.9.0 2.9.0-SNAPSHOT
Display parameters as parsed by Maven (in canonical form) and comparison result:
1. 2.9.0 == 2.9
2.9.0 > 2.9.0-SNAPSHOT
2. 2.9.0-SNAPSHOT == 2.9-snapshot
The rational: 2.9.0-SNAPSHOT will result in 2.9.0, hence the SNAPSHOT is before/smaller and will not be included if you o [2.9.0 .
Here's the related javadoc: https://maven.apache.org/resolver/apidocs/org/eclipse/aether/util/version/GenericVersionScheme.html

Build-Jdk-Spec version in Manifest.Mf

I am using logback-classic 1.3.5 in my project but it is giving me UnsupportedOperationException. My project is on JDK 8 and when I saw in manifest file of logback-classic-1.3.5, it shows build-jdk-spec version as 19. I just want to know what exactly this "build-jdk-spec" version specifies
The build-jdk-spec attribute is a "default" attribute added by the Maven "maven-archiver-plugin" (reference). The value is the value of the ${java.specification.version} property for the build. It is (I think) the JDK version of the JVM that was running the build tool (Maven).
The [build-jdk-spec] version number most likely doesn't signify anything that is relevant to your problem. (It is NOT the the target Java version for the build!!)
The real cause of your problem can be deduced by looking at the details of the UnsupportedOperationException stacktrace.

Using Neo4j 3.1.5 with neo4j-elasticsearch 3.1.4

I am trying to link my Neo4j db with Elasticsearch using the recommended approach on the Neo4j website, with this GitHub repository https://github.com/neo4j-contrib/neo4j-elasticsearch
I have done all the steps that they say to do, but when I run it in terminal I get this error (everything works normally except that nothing is getting pushed to Elasticsearch):
Failed to load `org.apache.commons.logging.impl.AvalonLogger` from
plugin jar
`/Users/tkralj/Documents/Neo4j/default.graphdb/plugins/neo4j-
elasticsearch-3.1.4.jar`: org/apache/avalon/framework/logger/Logger
2017-07-13 20:21:46.911+0000 WARN [o.n.k.i.p.Procedures]
Failed to load `org.apache.commons.logging.impl.Log4JLogger` from
plugin jar
`/Users/tkralj/Documents/Neo4j/default.graphdb/plugins/neo4j-
elasticsearch-3.1.4.jar`: org/apache/log4j/Category
2017-07-13 20:21:46.911+0000 WARN [o.n.k.i.p.Procedures]
Failed to
load `org.apache.commons.logging.impl.LogKitLogger` from plugin jar
`/Users/tkralj/Documents/Neo4j/default.graphdb/plugins/neo4j-
elasticsearch-3.1.4.jar`: org/apache/log/Logger
I am running Neo4j 3.1.5, while this plugin was created for 3.1.4 and I think that may be the issue; however, there is no plugin made for 3.1.5, and I cannot find a way to download the older version of Neo4j.
Looks like old question but still answering for future googlers.
I was facing the same problem with 3.1.x version . For me it's working fine with version 3.2

Project won't compile in IntelliJ IDEA after adding Maven support because of complaints about the JDK version

I'm using IntellJ 14.1.4 Community Edition
My project compiled fine before (I have it set up to use the Eclipse compiler)
But I tried to Mavenize it...
I added Maven via the Add Framework | Maven command
Now my problem is (still using the Eclipse Compiler)...
It gives me error messages like:
Error:(21, 78) java: '<>' operator is not allowed for source level below 1.7
Which leads me to suspect that it is not compiling to 1.8
However, I didn't change anything other than Mavenizing it
The Project SDK in IDEA is set to use 1.8
I did notice some setting about bytecode being 1.5.. but i tried to change that to 1.8 but still get this error message.
Anyone have any clue what's going on?
this was essentially the correct advice of course - in the comments, however I had been trying to do it for a long time both via maven-compiler-plugin and properties... to no success, even though I was refreshing Maven after making changes to pom.xml. Finally, I restarted the IDE .. and .. it works! I can compile..

Is SpringSource Tool Suite 2.6 Grails support broken?

I have recently updated my STS from 2.5.2 to 2.6. Since then, each grails project shows an error in the conf/spring/resources.groovy file reading: Description Resource Path Location Type
Internal compiler error: java.lang.VerifyError: (class: org/codehaus/jdt/groovy/internal/compiler/ast/JDTClassNode, method: initialize signature: ()V) Bad access to protected data at org.codehaus.jdt.groovy.internal.compiler.ast.JDTResolver.createClassNode(JDTResolver.java:461) resources.groovy /GrailsProject/grails-app/conf/spring line 0 Java Problem
The resources.groovy file is as good as empty (in default state), and if I delete it, the error is shown on the DataSource.groovy, so the file itself seems not to be the cause.The used groovy compiler version is 1.7.3.I have made a clean STS 2.6 install, installed the groovy and grails plugins and got the same error.What could be the problem? And is there a solution to this not resulting in downgrading to 2.5.2 again? Thank you
Take a look at your preferences Groovy -> Compiler. Are you by any chance accidentally using Groovy 1.6?
EDIT
That didn't solve the problem, but as described in http://forum.springframework.org/showthread.php?p=357361, upgrade to the latest dev build of Groovy-Eclipse as well as Grails Tooling and that should work.

Resources