legend-pure icon indicating copy to clipboard operation
legend-pure copied to clipboard

Fails to build

Open saraswat opened this issue 2 years ago • 3 comments

Bug Report

Steps to Reproduce:

  1. Clone the repo.
  2. Edit the main pom.xml to remove <module>legend-pure-ide-light</module> -- this is my attempt to operationalize the comment in the readme:

Pure IDE has a web application component which requires Node 14.17.1+ and Yarn 1.22.10. Make sure you have these set up in your development environment, otherwise, you would need to exclude the build step for this web application in legend-pure-ide-light module.

(I looked for what I could exclude in legend-pure-ide-light/pom.xml, couldn't find anything. Is this particular comment out of date?) 3. Run mvn install

Expected Result:

successful build

Actual Result:

failure. See attached log.

Environment:

mvn](url) --version:

Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: /Users/vijaysaraswat/Downloads/apache-maven-3.6.3
Java version: 11.0.14, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-11.0.14.jdk/Contents/Home
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "11.4", arch: "x86_64", family: "mac"

Additional Context:

...add any other context about the problem here. If applicable, add screenshots to help explain... build-fail-log.txt

git log:

 git log
WARNING: terminal is not fully functional
-  (press RETURN) 
commit ca62687264a4e45807aa7084edf56aaacd5b8eac (HEAD -> master, origin/master, origin/HEAD)
Author: pierredebelen <[email protected]>
Date:   Wed Mar 23 11:24:00 2022 -0400

    [maven-release-plugin] prepare for next development iteration

commit 2d18b24d608469e2ff975efb4bf77655d6d9c2bc (tag: legend-pure-1.52.0)
Author: pierredebelen <[email protected]>
Date:   Wed Mar 23 11:23:58 2022 -0400

    [maven-release-plugin] prepare release legend-pure-1.52.0
...

git status is:

On branch master
Your branch is up to date with 'origin/master'.

saraswat avatar Mar 24 '22 10:03 saraswat

Rather than deleting the module from the root pom, you can exclude the module from the build:

mvn clean install -pl !legend-pure-ide-light

(note in bash the ! needs to be escaped using the backslash)

aziemchawdhary-gs avatar Mar 24 '22 11:03 aziemchawdhary-gs

Thanks, did that. Blew away my checkout. Did a fresh git clone. Still get:

Tests run: 14, Failures: 0, Errors: 14, Skipped: 0, Time elapsed: 0.02 sec <<< FAILURE! - in org.finos.legend.pure.m4.primitives.TestPureDate
testAddNanoseconds(org.finos.legend.pure.m4.primitives.TestPureDate)  Time elapsed: 0.013 sec  <<< ERROR!
java.lang.Error: Unresolved compilation problem: 
	The declared package "org.finos.legend.pure.m4.coreinstance.primitive.date" does not match the expected package "org.finos.legend.pure.m4.primitives"

	at org.finos.legend.pure.m4.primitives.TestPureDate.<init>(TestPureDate.java:15)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
	at org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunner.java:250)
	at org.junit.runners.BlockJUnit4ClassRunner.createTest(BlockJUnit4ClassRunner.java:260)
	at org
...

saraswat avatar Mar 24 '22 11:03 saraswat

Actually, doing a mvn pre-clean clean post-clean before the mvn install -pl \!legend-pure-ide-light has helped. Compilation is progressing. Let's see if it terminates successfully.

This time made a lot of progress, now breaks in Legend Pure - Runtime - Engine Compiled:

[WARNING] 
org.finos.legend.pure.m4.exception.PureCompilationException: Compilation error at (resource:/platform/json/json.pure lines:36c19-38c1), "Error generating Java code for JSONElement(19) instanceOf Class"
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:463)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.generateCode (JavaSourceCodeGenerator.java:221)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaClassLoaderSourceCodeGenerator.gen (JavaClassLoaderSourceCodeGenerator.java:76)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaClassLoaderSourceCodeGenerator.main (JavaClassLoaderSourceCodeGenerator.java:48)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:282)
    at java.lang.Thread.run (Thread.java:834)
Caused by: java.lang.NoClassDefFoundError: org/finos/legend/pure/runtime/java/compiled/generation/processors/type/_class/ClassInterfaceProcessor$1
    at org.finos.legend.pure.runtime.java.compiled.generation.processors.type._class.ClassInterfaceProcessor.buildInterface (ClassInterfaceProcessor.java:70)
    at org.finos.legend.pure.runtime.java.compiled.generation.processors.type._class.ClassProcessor.processClass (ClassProcessor.java:99)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:425)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.generateCode (JavaSourceCodeGenerator.java:221)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaClassLoaderSourceCodeGenerator.gen (JavaClassLoaderSourceCodeGenerator.java:76)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaClassLoaderSourceCodeGenerator.main (JavaClassLoaderSourceCodeGenerator.java:48)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:282)
    at java.lang.Thread.run (Thread.java:834)
Caused by: java.lang.ClassNotFoundException: org.finos.legend.pure.runtime.java.compiled.generation.processors.type._class.ClassInterfaceProcessor$1
    at java.net.URLClassLoader.findClass (URLClassLoader.java:476)
    at java.lang.ClassLoader.loadClass (ClassLoader.java:588)
    at java.lang.ClassLoader.loadClass (ClassLoader.java:521)
    at org.finos.legend.pure.runtime.java.compiled.generation.processors.type._class.ClassInterfaceProcessor.buildInterface (ClassInterfaceProcessor.java:70)
    at org.finos.legend.pure.runtime.java.compiled.generation.processors.type._class.ClassProcessor.processClass (ClassProcessor.java:99)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:425)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.toJava (JavaSourceCodeGenerator.java:416)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaSourceCodeGenerator.generateCode (JavaSourceCodeGenerator.java:221)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaClassLoaderSourceCodeGenerator.gen (JavaClassLoaderSourceCodeGenerator.java:76)
    at org.finos.legend.pure.runtime.java.compiled.generation.JavaClassLoaderSourceCodeGenerator.main (JavaClassLoaderSourceCodeGenerator.java:48)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0 (Native Method)
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:62)
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke (Method.java:566)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run (ExecJavaMojo.java:282)
    at java.lang.Thread.run (Thread.java:834)

Log file attached mvn-build-log-2.txt

saraswat avatar Mar 24 '22 11:03 saraswat