groovy exception while building presto at 0.229 - groovy

I'm learning presto, and want to run Presto in my IDE.
So I builded presto with "./mvnw clean install -DskipTests", following the instructions in this document: https://github.com/Teradata/presto.
But I encountered an exception as follow
[ERROR] Failed to execute goal com.github.spotbugs:spotbugs-maven-plugin:3.1.10:spotbugs (spotbugs) on project presto-root: Execution spotbugs of goal com.github.spotbugs:spotbugs-maven-plugin:3.1.10:spotbugs failed: Unable to load the mojo 'spotbugs' in the plugin 'com.github.spotbugs:spotbugs-maven-plugin:3.1.10'. A required class is missing: groovy/lang/GroovyObject
My version of Presto is tag 0.229.
How can I fix this problem?

following the instructions in this document: https://github.com/Teradata/presto.
This is an obsolete repository.
The team maintaining it left Teradata in 2017 and started Starburst Data company (read more https://www.globenewswire.com/news-release/2017/12/13/1261305/0/en/Starburst-Accelerates-Presto-Adoption-for-Fast-Interactive-Queries-of-Big-Data.html).
In 2019 the team works closely with Presto Software Foundation.
Thus, https://github.com/trinodb/trino is the current "home address" to use.
[ERROR] Failed to execute goal com.github.spotbugs:spotbugs-maven-plugin:3.1.10:spotbugs (spotbugs) on project presto-root: Execution spotbugs of goal com.github.spotbugs:spotbugs-maven-plugin:3.1.10:spotbugs failed: Unable to load the mojo 'spotbugs' in the plugin 'com.github.spotbugs:spotbugs-maven-plugin:3.1.10'. A required class is missing: groovy/lang/GroovyObject
I have not encountered a problem like that before.
Note that Presto currently recommends Java 8 to build.
You can use e.g. Open JDK, Adopt Open JDK or Azul's distribution.
If more troubleshooting is needed, that isn't really fit for SO question-answer design, I recommend you join the #dev channel on Presto Community slack.

Related

How do I build Cassandra from GitHub source?

I found this repo on github: https://github.com/apache/cassandra
And I would like to import it into intellij and build it in order to run some code locally that I want to build on top of this github code. But there are no instructions for building it.
Where are the instructions?
Thank you for taking interest in writing Cassandra code.
The instructions for building Cassandra from source code including IDE integration is documented in the Contributing to Cassandra page on the official Apache Cassandra website. There are instructions for IntelliJ, NetBeans and Eclipse.
It's not as straightforward as we would like because everyone's laptop/desktop is different so I would recommend you join the ASF Slack to get help in real-time from other Cassandra contributors in the #cassandra-dev channel. For details, see the Community section of the Cassandra website. Cheers!
👉 Please support the Apache Cassandra community by hovering over cassandra then click on the Watch tag button. 🙏 Thanks!

Unable to initialize Hybris 2205

I'm trying to initialize local Hybris 2205.3 version and getting following error -
ERROR [hybrisHTTP27] [HacInitUpdateFacade] Failed to initialize
java.lang.IllegalArgumentException: Property 'http://javax.xml.XMLConstants/property/accessExternalSchema' is not recognized.
Using Oracle JDK 17.0.4.1. Initialization triggered from HAC.
I've tried adding following property to tomcat.generaloptions also which didn't help -
"-Djavax.xml.accessExternalSchema=all"
Any pointers to fix this? Or need more information?
It could be that one of the custom jar is older version and conflicting with oob. In one of our project we faced a similar issue and found that xerces.jar version in custom code was of lower version.
Both the jars I.e in oob and custom there was xmlconstant class but lower version jar used in custom code didn't have accessExternalSchema as class variable and was being picked up by system on startup because of conflict.
Oracle JDK not supported anymore, you need to try with SapMachine 17.0.
Whole system requirements by version is here.
We resolved the issue with Oracle JDK 17 only. We faced the same issue while upgrade from 2105 to 2211. This is due to jar dependency. We tried with the above given solution but it didn't work for us. We researched more and found the issue with dependency with xerces which caused conflict. We also found there is "xerces-2.12-orbeon' xerces-2.12-orbeon in OOTB. We did two things to resolve the issue
we updated classpath with xerces-2.12-orbeon( OOTB jar) in out custom code
We need to modify few code base as we were using xerces for Base64 encrytion and decryption for SSO
Please let me know if you have any questions, I will try my best to respond in time.
Regards,
Abhijit Das
Please find the link here:
https://answers.sap.com/questions/13781195/hybris-2211-upgradation-error.html?childToView=13818282

JNA library for z/OS (USS)

I am trying to run cassandra on z/OS USS (Mainframe) which loads JNA jar. CASSANDRA fails to start with an error -
ERROR [main] 2020-04-01 01:07:44,272 NativeLibraryLinux.java:64 - Failed to link the C library against JNA. Native methods will be unavailable.
java.lang.UnsatisfiedLinkError: Native library (com/sun/jna/z/os-s390x/libjnidispatch.so) not found.
I could not find com/sun/jna/z/os-s390x/libjnidispatch.so inside the jar. libjnidispatch.so uses libffi C library. There is a port available https://github.com/eclipse/openj9/tree/master/runtime/libffi/z. I am not sure how to compile libffi and libjnidispatch.so on USS (Mainframe).
Is there any JNA library/libjnidispatch.so port available on z/OS USS (Mainframe)?
There is an open source project that is implementing Devops on Z called Polycephaly. Here is a link to their comments on this error.
They do not specifically refer to Cassandra but this is an error related to Jenkins as one of several distributed tools to improve DevOps on z/OS.
The error does not seem to impact what they are doing as there are alternative classes available to manage this function.
Note: the error 'com/sun/jna/z/os-s390x/libjnidispatch.so' not found is normal. The z/OS Java doesn't contain the Oracle JNI classes. This will not cause any issues.

JHipster Mini Book Tuto fail, like other

Trying to setup an app with JHipster. Every tutorials I follow I have errors and failures.
Whatever options I select I got errors on my project.
Following the JHipster MiniBook procedure I have error like this on my IDE at start:
http://imgur.com/bWdek5W
And when I follow the directives to page 24 and try to run
./gradlew bootRun
I got a build failed: http://imgur.com/jFeJEQ6
I don't know what I'm doing wrong. I follow step by step the book, or other tutorials. Something must be wrong configured on my computer.
Any idea ?
Just looking at the error messages which are shown:
On the first screenshot you have configured your IDE to use Java 1.6 source code. JHipster is using Java 1.8, so the lambda expressions (which are new in Java 1.8) cannot be compiled.
On the second screenshot you have configured JHipster to use an external database. But you have not followed the documentation, which tells you to configure that external database in your application-dev.yml configuration file (and to start the database, of course!)

OpenJPA 2.1.1 enhancement problem on Glassfish 3.1.1

My problem is this exception:
Caused by: <openjpa-2.1.1-r422266:1148538 nonfatal user error> org.apache.openjpa.persistence.ArgumentException: This configuration disallows runtime optimization, but the following listed types were not enhanced at build time or at class load time with a javaagent: "
I'm trying to get an very simple java application with jsf and jpa running, but there seems to be a problem with the enhancement of my entities. As far as I know, tries OpenJPA to enhance my entities at runtime, which are listet in the persistence.xml, however there is no agent to do this. The keyword for this is: Enhancing at Runtime, right?
I thought the enhancement will automatically done by the application server at deployment? How can I configure this?
My exactly environment:
Glassfish 3.1.1
Derby, which is integrated in Glassfish
OpenJPA 2.1.1
Mojarra JSF 2.1.3
Update #1:
After some comments I've added the following lines to my persistence.xml:
<property name="openjpa.DynamicEnhancementAgent" value="false"/>
<property name="openjpa.RuntimeUnenhancedClasses" value="supported" />
It works now, but OpenJPA throw this warning:
SEVERE: 52 myApp WARN [http-thread-pool-8080(5)] openjpa.Enhance - Creating subclass for "[class myApp.model.entities.AbstractEntity, class myApp.model.entities.Post]".
This means that your application will be less efficient and will consume more memory than it would if you ran the OpenJPA enhancer. Additionally, lazy loading will not be available for one-to-one and many-to-one persistent attributes in types using field access; they will be loaded eagerly instead.
I think this can't be the solution.
Update #2:
Refer to fvu's answer, I've tried to define the -javaagent jvm parameter in the domain.xml and over the web admin console. After a restart appeared the problem again.
Update #3:
Refer to update #2, I've played a bit around. There must be thrown an error, when the -javaagent parameter is used, but the file is missing, right?. Yes, there it is:
Waiting for domain1 to start .Command start-domain failed.
Error starting domain domain1.
The server exited prematurely with exit code 1.
Before it died, it produced the following output:
Error occurred during initialization of VM
agent library failed to init: instrument
Error opening zip file or JAR manifest missing : /tmp/openjpa.jar
If I copying the agent to this location, this error doesn't appear, but openjpa could still not enhance my entities!
If you're still having issues... I'd highly recommend biting the bullet and setting up build time enhancement. You'll be much happier in the long run if you get that going.
A couple of ideas:
add the Java agent for enhancement to GF's JVM option, see this link for an example of how to install a javaagent and OpenJPA's doc 5.2.3, enhancing at runtime. That emulates enhancer activation in desktop apps as closely as possible IMO.
However, when I read chapter 5.2.4 of the OpenJPA docs it might be capable of picking up the correct enhancer automatically. Try copying openjpa.jar to the domain's library directory, and check what happens after a server restart.

Resources