Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add .mvn/jvm.config #94

Closed
gurminder71 opened this issue Mar 18, 2024 · 9 comments · Fixed by #100
Closed

Add .mvn/jvm.config #94

gurminder71 opened this issue Mar 18, 2024 · 9 comments · Fixed by #100
Assignees

Comments

@gurminder71
Copy link
Contributor

On Mac with various JDKs I could not do mvn compile. Ultimately found solution to have .mvn/jvm.config with following contents:

--add-exports jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED
--add-exports jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
--add-exports jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED
--add-exports jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
--add-exports jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
--add-exports jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED
--add-exports jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
--add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
--add-opens jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED

Please include this in the repository

@nielm
Copy link
Collaborator

nielm commented Apr 30, 2024

Can you give some more explanation on when this happens (ie which JDKs, what part of build process)

Normally anything com.sun.* should be hidden from the users, and I have not seen the same issue so I am reluctant to add this to the repo for all users...

@gurminder71
Copy link
Contributor Author

I am using openjdk@21 installed using brew. Here is the complete output on Mac laptop:

% mvn clean generate-resources compile assembly:single
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------< com.google.cloud.solutions:spanner-ddl-diff >-------------
[INFO] Building spanner-ddl-diff 1.0
[INFO]   from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- clean:3.3.2:clean (default-clean) @ spanner-ddl-diff ---
[INFO] Deleting /Users/gurminder/spanner-schema-diff-tool/target
[INFO] 
[INFO] --- exec:3.2.0:exec (jjt-2-concat) @ spanner-ddl-diff ---
[INFO] 
[INFO] --- ph-javacc:4.1.5:jjtree-javacc (jjt-2-compile) @ spanner-ddl-diff ---
ParserGeneratorCC Version 1.1.4 (Tree Builder)
(type "jjtree" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/spanner-schema-diff-tool/target/generated-sources/jjtree-src/DdlParser.jjt . . .
Warning: Bad option name "STATIC".  Option setting will be ignored.
opt:java
File "Node.java" does not exist.  Will create one.
File "SimpleNode.java" does not exist.  Will create one.
File "ASTany_reserved_word.java" does not exist.  Will create one.
File "ASTany_string_literal.java" does not exist.  Will create one.
File "ASTany_bytes_literal.java" does not exist.  Will create one.
File "ASTexpression.java" does not exist.  Will create one.
File "ASTgooglesql_operator.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren.java" does not exist.  Will create one.
File "ASTpart.java" does not exist.  Will create one.
File "ASTidentifier_list.java" does not exist.  Will create one.
File "ASTidentifier.java" does not exist.  Will create one.
File "ASTqualified_identifier_list.java" does not exist.  Will create one.
File "ASTpath.java" does not exist.  Will create one.
File "ASTint_value.java" does not exist.  Will create one.
File "ASTstring_value.java" does not exist.  Will create one.
File "ASTddl_statement.java" does not exist.  Will create one.
File "ASTcreate_or_replace_statement.java" does not exist.  Will create one.
File "ASTalter_index_statement.java" does not exist.  Will create one.
File "ASTname.java" does not exist.  Will create one.
File "ASTadd.java" does not exist.  Will create one.
File "ASTdrop.java" does not exist.  Will create one.
File "ASTcolumn_name.java" does not exist.  Will create one.
File "ASToptions_clause.java" does not exist.  Will create one.
File "ASTcreate_database_statement.java" does not exist.  Will create one.
File "ASTdb_name.java" does not exist.  Will create one.
File "ASTcreate_table_statement.java" does not exist.  Will create one.
File "ASTcolumn_def.java" does not exist.  Will create one.
File "ASTnot_null.java" does not exist.  Will create one.
File "ASThidden.java" does not exist.  Will create one.
File "ASTcolumn_def_alter_attrs.java" does not exist.  Will create one.
File "ASTcolumn_def_alter.java" does not exist.  Will create one.
File "ASTset_not_null.java" does not exist.  Will create one.
File "ASTdrop_column_default.java" does not exist.  Will create one.
File "ASTdrop_not_null.java" does not exist.  Will create one.
File "ASTcolumn_type.java" does not exist.  Will create one.
File "ASTlength.java" does not exist.  Will create one.
File "ASTpgtype.java" does not exist.  Will create one.
File "ASTstruct_fields.java" does not exist.  Will create one.
File "ASTstruct_field.java" does not exist.  Will create one.
File "ASTcolumn_length.java" does not exist.  Will create one.
File "ASTgeneration_clause.java" does not exist.  Will create one.
File "ASTstored.java" does not exist.  Will create one.
File "ASTcolumn_default_clause.java" does not exist.  Will create one.
File "ASTcolumn_default_expression.java" does not exist.  Will create one.
File "ASTprimary_key.java" does not exist.  Will create one.
File "ASTforeign_key.java" does not exist.  Will create one.
File "ASTconstraint_name.java" does not exist.  Will create one.
File "ASTreferencing_columns.java" does not exist.  Will create one.
File "ASTreferenced_table.java" does not exist.  Will create one.
File "ASTreferenced_columns.java" does not exist.  Will create one.
File "ASTon_delete.java" does not exist.  Will create one.
File "ASTreferential_action.java" does not exist.  Will create one.
File "ASTno_action.java" does not exist.  Will create one.
File "ASTcascade.java" does not exist.  Will create one.
File "ASTstatement_token_no_paren.java" does not exist.  Will create one.
File "ASTcheck_constraint.java" does not exist.  Will create one.
File "ASTcheck_constraint_expression.java" does not exist.  Will create one.
File "ASTtable_interleave_clause.java" does not exist.  Will create one.
File "ASTinterleave_in.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_clause.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_expression.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_function.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_column.java" does not exist.  Will create one.
File "ASTinterval_expression.java" does not exist.  Will create one.
File "ASTon_delete_clause.java" does not exist.  Will create one.
File "ASTcreate_index_statement.java" does not exist.  Will create one.
File "ASTunique_index.java" does not exist.  Will create one.
File "ASTnull_filtered.java" does not exist.  Will create one.
File "ASTtable.java" does not exist.  Will create one.
File "ASTcolumns.java" does not exist.  Will create one.
File "ASTindex_interleave_clause.java" does not exist.  Will create one.
File "ASTcreate_change_stream_statement.java" does not exist.  Will create one.
File "ASTchange_stream_for_clause.java" does not exist.  Will create one.
File "ASTall.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables_entry.java" does not exist.  Will create one.
File "ASTexplicit_columns.java" does not exist.  Will create one.
File "ASTcolumn.java" does not exist.  Will create one.
File "ASTcreate_role_statement.java" does not exist.  Will create one.
File "ASTprivilege.java" does not exist.  Will create one.
File "ASTprivileges.java" does not exist.  Will create one.
File "ASTtarget_type.java" does not exist.  Will create one.
File "ASTtable_function.java" does not exist.  Will create one.
File "ASTfunction.java" does not exist.  Will create one.
File "ASTchange_stream.java" does not exist.  Will create one.
File "ASTview.java" does not exist.  Will create one.
File "ASTsequence.java" does not exist.  Will create one.
File "ASTprivilege_target.java" does not exist.  Will create one.
File "ASTgrantees.java" does not exist.  Will create one.
File "ASTgrant_statement.java" does not exist.  Will create one.
File "ASTrevoke_statement.java" does not exist.  Will create one.
File "ASTcreate_sequence_statement.java" does not exist.  Will create one.
File "ASTkey_part.java" does not exist.  Will create one.
File "ASTdesc.java" does not exist.  Will create one.
File "ASTstored_column.java" does not exist.  Will create one.
File "ASTstored_column_list.java" does not exist.  Will create one.
File "ASToption_key_val.java" does not exist.  Will create one.
File "ASTkey.java" does not exist.  Will create one.
File "ASTnulll.java" does not exist.  Will create one.
File "ASTbool_true_val.java" does not exist.  Will create one.
File "ASTbool_false_val.java" does not exist.  Will create one.
File "ASTinteger_val.java" does not exist.  Will create one.
File "ASTstr_val.java" does not exist.  Will create one.
File "ASTstr_val_list.java" does not exist.  Will create one.
File "ASTor_replace.java" does not exist.  Will create one.
File "ASTsql_security.java" does not exist.  Will create one.
File "ASTcreate_view_statement.java" does not exist.  Will create one.
File "ASTview_definition.java" does not exist.  Will create one.
File "ASTstatement_tokens.java" does not exist.  Will create one.
File "ASTif_not_exists.java" does not exist.  Will create one.
File "ASTif_exists.java" does not exist.  Will create one.
File "ASTcreate_schema_statement.java" does not exist.  Will create one.
File "ASTcreate_model_statement.java" does not exist.  Will create one.
File "ASTinput.java" does not exist.  Will create one.
File "ASToutput.java" does not exist.  Will create one.
File "ASTremote.java" does not exist.  Will create one.
File "ASTdrop_statement.java" does not exist.  Will create one.
File "ASTindex.java" does not exist.  Will create one.
File "ASTrole.java" does not exist.  Will create one.
File "ASTmodel.java" does not exist.  Will create one.
File "ASTschema.java" does not exist.  Will create one.
File "ASTalter_database_statement.java" does not exist.  Will create one.
File "ASTalter_table_statement.java" does not exist.  Will create one.
File "ASTtable_name.java" does not exist.  Will create one.
File "ASTdrop_constraint.java" does not exist.  Will create one.
File "ASTdrop_row_deletion_policy.java" does not exist.  Will create one.
File "ASTdrop_column.java" does not exist.  Will create one.
File "ASTalter_column.java" does not exist.  Will create one.
File "ASTset_on_delete.java" does not exist.  Will create one.
File "ASTadd_row_deletion_policy.java" does not exist.  Will create one.
File "ASTadd_column.java" does not exist.  Will create one.
File "ASTreplace_row_deletion_policy.java" does not exist.  Will create one.
File "ASTalter_change_stream_statement.java" does not exist.  Will create one.
File "ASTdrop_for_all.java" does not exist.  Will create one.
File "ASTalter_sequence_statement.java" does not exist.  Will create one.
File "ASTalter_schema_statement.java" does not exist.  Will create one.
File "ASTalter_model_statement.java" does not exist.  Will create one.
File "ASTanalyze_statement.java" does not exist.  Will create one.
File "DdlParserTreeConstants.java" does not exist.  Will create one.
File "JJTDdlParserState.java" does not exist.  Will create one.
Annotated grammar generated successfully in /Users/gurminder/spanner-schema-diff-tool/target/javacc-1714486997275/node/DdlParser.jj
ParserGeneratorCC Version 1.1.4 (ParserGeneratorCC)
(type "pgcc" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/spanner-schema-diff-tool/target/javacc-1714486997275/node/DdlParser.jj ...
Warning: Line 49, Column 3: Bad option name "STATIC".  Option setting will be ignored.
Note: UNICODE_INPUT option is specified. Please make sure you create the parser/lexer using a Reader with the correct character encoding.
Warning: Choice conflict in [...] construct at line 918, column 3.
         Expansion nested within construct and expansion following construct
         have common prefixes, one of which is: "bool"
         Consider using a lookahead of 2 or more for nested expansion.
File "TokenMgrException.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "CharStream.java" does not exist.  Will create one.
File "AbstractCharStream.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated with 0 errors and 2 warnings.
[INFO] Processed 1 grammar
[INFO] 
[INFO] --- build-helper:3.5.0:add-source (add-source) @ spanner-ddl-diff ---
[INFO] Source directory: /Users/gurminder/spanner-schema-diff-tool/target/generated-sources/jjtree added.
[INFO] 
[INFO] --- exec:3.2.0:exec (jjt-2-concat) @ spanner-ddl-diff ---
[INFO] 
[INFO] --- ph-javacc:4.1.5:jjtree-javacc (jjt-2-compile) @ spanner-ddl-diff ---
ParserGeneratorCC Version 1.1.4 (Tree Builder)
(type "jjtree" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/spanner-schema-diff-tool/target/generated-sources/jjtree-src/DdlParser.jjt . . .
Warning: Bad option name "STATIC".  Option setting will be ignored.
opt:java
File "Node.java" does not exist.  Will create one.
File "SimpleNode.java" does not exist.  Will create one.
File "ASTany_reserved_word.java" does not exist.  Will create one.
File "ASTany_string_literal.java" does not exist.  Will create one.
File "ASTany_bytes_literal.java" does not exist.  Will create one.
File "ASTexpression.java" does not exist.  Will create one.
File "ASTgooglesql_operator.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren.java" does not exist.  Will create one.
File "ASTpart.java" does not exist.  Will create one.
File "ASTidentifier_list.java" does not exist.  Will create one.
File "ASTidentifier.java" does not exist.  Will create one.
File "ASTqualified_identifier_list.java" does not exist.  Will create one.
File "ASTpath.java" does not exist.  Will create one.
File "ASTint_value.java" does not exist.  Will create one.
File "ASTstring_value.java" does not exist.  Will create one.
File "ASTddl_statement.java" does not exist.  Will create one.
File "ASTcreate_or_replace_statement.java" does not exist.  Will create one.
File "ASTalter_index_statement.java" does not exist.  Will create one.
File "ASTname.java" does not exist.  Will create one.
File "ASTadd.java" does not exist.  Will create one.
File "ASTdrop.java" does not exist.  Will create one.
File "ASTcolumn_name.java" does not exist.  Will create one.
File "ASToptions_clause.java" does not exist.  Will create one.
File "ASTcreate_database_statement.java" does not exist.  Will create one.
File "ASTdb_name.java" does not exist.  Will create one.
File "ASTcreate_table_statement.java" does not exist.  Will create one.
File "ASTcolumn_def.java" does not exist.  Will create one.
File "ASTnot_null.java" does not exist.  Will create one.
File "ASThidden.java" does not exist.  Will create one.
File "ASTcolumn_def_alter_attrs.java" does not exist.  Will create one.
File "ASTcolumn_def_alter.java" does not exist.  Will create one.
File "ASTset_not_null.java" does not exist.  Will create one.
File "ASTdrop_column_default.java" does not exist.  Will create one.
File "ASTdrop_not_null.java" does not exist.  Will create one.
File "ASTcolumn_type.java" does not exist.  Will create one.
File "ASTlength.java" does not exist.  Will create one.
File "ASTpgtype.java" does not exist.  Will create one.
File "ASTstruct_fields.java" does not exist.  Will create one.
File "ASTstruct_field.java" does not exist.  Will create one.
File "ASTcolumn_length.java" does not exist.  Will create one.
File "ASTgeneration_clause.java" does not exist.  Will create one.
File "ASTstored.java" does not exist.  Will create one.
File "ASTcolumn_default_clause.java" does not exist.  Will create one.
File "ASTcolumn_default_expression.java" does not exist.  Will create one.
File "ASTprimary_key.java" does not exist.  Will create one.
File "ASTforeign_key.java" does not exist.  Will create one.
File "ASTconstraint_name.java" does not exist.  Will create one.
File "ASTreferencing_columns.java" does not exist.  Will create one.
File "ASTreferenced_table.java" does not exist.  Will create one.
File "ASTreferenced_columns.java" does not exist.  Will create one.
File "ASTon_delete.java" does not exist.  Will create one.
File "ASTreferential_action.java" does not exist.  Will create one.
File "ASTno_action.java" does not exist.  Will create one.
File "ASTcascade.java" does not exist.  Will create one.
File "ASTstatement_token_no_paren.java" does not exist.  Will create one.
File "ASTcheck_constraint.java" does not exist.  Will create one.
File "ASTcheck_constraint_expression.java" does not exist.  Will create one.
File "ASTtable_interleave_clause.java" does not exist.  Will create one.
File "ASTinterleave_in.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_clause.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_expression.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_function.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_column.java" does not exist.  Will create one.
File "ASTinterval_expression.java" does not exist.  Will create one.
File "ASTon_delete_clause.java" does not exist.  Will create one.
File "ASTcreate_index_statement.java" does not exist.  Will create one.
File "ASTunique_index.java" does not exist.  Will create one.
File "ASTnull_filtered.java" does not exist.  Will create one.
File "ASTtable.java" does not exist.  Will create one.
File "ASTcolumns.java" does not exist.  Will create one.
File "ASTindex_interleave_clause.java" does not exist.  Will create one.
File "ASTcreate_change_stream_statement.java" does not exist.  Will create one.
File "ASTchange_stream_for_clause.java" does not exist.  Will create one.
File "ASTall.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables_entry.java" does not exist.  Will create one.
File "ASTexplicit_columns.java" does not exist.  Will create one.
File "ASTcolumn.java" does not exist.  Will create one.
File "ASTcreate_role_statement.java" does not exist.  Will create one.
File "ASTprivilege.java" does not exist.  Will create one.
File "ASTprivileges.java" does not exist.  Will create one.
File "ASTtarget_type.java" does not exist.  Will create one.
File "ASTtable_function.java" does not exist.  Will create one.
File "ASTfunction.java" does not exist.  Will create one.
File "ASTchange_stream.java" does not exist.  Will create one.
File "ASTview.java" does not exist.  Will create one.
File "ASTsequence.java" does not exist.  Will create one.
File "ASTprivilege_target.java" does not exist.  Will create one.
File "ASTgrantees.java" does not exist.  Will create one.
File "ASTgrant_statement.java" does not exist.  Will create one.
File "ASTrevoke_statement.java" does not exist.  Will create one.
File "ASTcreate_sequence_statement.java" does not exist.  Will create one.
File "ASTkey_part.java" does not exist.  Will create one.
File "ASTdesc.java" does not exist.  Will create one.
File "ASTstored_column.java" does not exist.  Will create one.
File "ASTstored_column_list.java" does not exist.  Will create one.
File "ASToption_key_val.java" does not exist.  Will create one.
File "ASTkey.java" does not exist.  Will create one.
File "ASTnulll.java" does not exist.  Will create one.
File "ASTbool_true_val.java" does not exist.  Will create one.
File "ASTbool_false_val.java" does not exist.  Will create one.
File "ASTinteger_val.java" does not exist.  Will create one.
File "ASTstr_val.java" does not exist.  Will create one.
File "ASTstr_val_list.java" does not exist.  Will create one.
File "ASTor_replace.java" does not exist.  Will create one.
File "ASTsql_security.java" does not exist.  Will create one.
File "ASTcreate_view_statement.java" does not exist.  Will create one.
File "ASTview_definition.java" does not exist.  Will create one.
File "ASTstatement_tokens.java" does not exist.  Will create one.
File "ASTif_not_exists.java" does not exist.  Will create one.
File "ASTif_exists.java" does not exist.  Will create one.
File "ASTcreate_schema_statement.java" does not exist.  Will create one.
File "ASTcreate_model_statement.java" does not exist.  Will create one.
File "ASTinput.java" does not exist.  Will create one.
File "ASToutput.java" does not exist.  Will create one.
File "ASTremote.java" does not exist.  Will create one.
File "ASTdrop_statement.java" does not exist.  Will create one.
File "ASTindex.java" does not exist.  Will create one.
File "ASTrole.java" does not exist.  Will create one.
File "ASTmodel.java" does not exist.  Will create one.
File "ASTschema.java" does not exist.  Will create one.
File "ASTalter_database_statement.java" does not exist.  Will create one.
File "ASTalter_table_statement.java" does not exist.  Will create one.
File "ASTtable_name.java" does not exist.  Will create one.
File "ASTdrop_constraint.java" does not exist.  Will create one.
File "ASTdrop_row_deletion_policy.java" does not exist.  Will create one.
File "ASTdrop_column.java" does not exist.  Will create one.
File "ASTalter_column.java" does not exist.  Will create one.
File "ASTset_on_delete.java" does not exist.  Will create one.
File "ASTadd_row_deletion_policy.java" does not exist.  Will create one.
File "ASTadd_column.java" does not exist.  Will create one.
File "ASTreplace_row_deletion_policy.java" does not exist.  Will create one.
File "ASTalter_change_stream_statement.java" does not exist.  Will create one.
File "ASTdrop_for_all.java" does not exist.  Will create one.
File "ASTalter_sequence_statement.java" does not exist.  Will create one.
File "ASTalter_schema_statement.java" does not exist.  Will create one.
File "ASTalter_model_statement.java" does not exist.  Will create one.
File "ASTanalyze_statement.java" does not exist.  Will create one.
File "DdlParserTreeConstants.java" does not exist.  Will create one.
File "JJTDdlParserState.java" does not exist.  Will create one.
Annotated grammar generated successfully in /Users/gurminder/spanner-schema-diff-tool/target/javacc-1714486997934/node/DdlParser.jj
ParserGeneratorCC Version 1.1.4 (ParserGeneratorCC)
(type "pgcc" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/spanner-schema-diff-tool/target/javacc-1714486997934/node/DdlParser.jj ...
Warning: Line 49, Column 3: Bad option name "STATIC".  Option setting will be ignored.
Note: UNICODE_INPUT option is specified. Please make sure you create the parser/lexer using a Reader with the correct character encoding.
Warning: Choice conflict in [...] construct at line 918, column 3.
         Expansion nested within construct and expansion following construct
         have common prefixes, one of which is: "bool"
         Consider using a lookahead of 2 or more for nested expansion.
File "TokenMgrException.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "CharStream.java" does not exist.  Will create one.
File "AbstractCharStream.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated with 0 errors and 2 warnings.
[INFO] Processed 1 grammar
[INFO] 
[INFO] --- build-helper:3.5.0:add-source (add-source) @ spanner-ddl-diff ---
[INFO] Source directory: /Users/gurminder/spanner-schema-diff-tool/target/generated-sources/jjtree added.
[INFO] 
[INFO] --- resources:3.3.1:resources (default-resources) @ spanner-ddl-diff ---
[INFO] skip non existing resourceDirectory /Users/gurminder/spanner-schema-diff-tool/src/main/resources
[INFO] 
[INFO] --- compiler:3.13.0:compile (default-compile) @ spanner-ddl-diff ---
[INFO] Recompiling the module because of changed source code.
[INFO] Compiling 158 source files with javac [debug target 8] to target/classes
An exception has occurred in the compiler (21.0.2). Please file a bug against the Java compiler via the Java bug reporting page (https://bugreport.java.com) after checking the Bug Database (https://bugs.java.com) for duplicates. Include your program, the following diagnostic, and the parameters passed to the Java compiler in your report. Thank you.
java.lang.IllegalAccessError: class com.google.errorprone.BaseErrorProneJavaCompiler (in unnamed module @0xf95d64d) cannot access class com.sun.tools.javac.api.BasicJavacTask (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.api to unnamed module @0xf95d64d
	at com.google.errorprone.BaseErrorProneJavaCompiler.addTaskListener(BaseErrorProneJavaCompiler.java:92)
	at com.google.errorprone.ErrorProneJavacPlugin.init(ErrorProneJavacPlugin.java:34)
	at jdk.compiler/com.sun.tools.javac.api.BasicJavacTask.initPlugin(BasicJavacTask.java:256)
	at jdk.compiler/com.sun.tools.javac.api.BasicJavacTask.initPlugins(BasicJavacTask.java:230)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.prepareCompiler(JavacTaskImpl.java:204)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:101)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.invocationHelper(JavacTaskImpl.java:152)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)
	at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:126)
	at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:214)
	at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:1228)
	at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:215)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:126)
	at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:328)
	at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:316)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:174)
	at org.apache.maven.lifecycle.internal.MojoExecutor.access$000(MojoExecutor.java:75)
	at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:162)
	at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:159)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:105)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:73)
	at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:53)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:118)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:261)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:173)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:101)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:906)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:283)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:206)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:283)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:226)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:407)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:348)
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] An unknown compilation problem occurred
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.922 s
[INFO] Finished at: 2024-04-30T07:23:18-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile (default-compile) on project spanner-ddl-diff: Compilation failure
[ERROR] An unknown compilation problem occurred
[ERROR] 
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

@nielm
Copy link
Collaborator

nielm commented Apr 30, 2024

Ok, so its ErrorProne causing the issue.

Can you remove or comment out lines 121 and 129-130 from pom.xml and see if it helps?

            <!-- <arg>-Xplugin:ErrorProne -XepExcludedPaths:${project.build.directory}/generated-sources/.* -XepDisableWarningsInGeneratedCode</arg> -->

...

            <!-- <path>
              <groupId>com.google.errorprone</groupId>
              <artifactId>error_prone_core</artifactId>
              <version>${error-prone.version}</version>
            </path> -->

@nielm
Copy link
Collaborator

nielm commented Apr 30, 2024

And indeed, Errorprone docs mention the issue in Maven and JDK 16+

@nielm
Copy link
Collaborator

nielm commented Apr 30, 2024

Can you check to see if the change in #100 fixes it for you.

(and yes I can now repro locally - while I had JDK 17 installed, JDK 11 was the version being used by default due to PATH shenanigans!)

@nielm
Copy link
Collaborator

nielm commented Apr 30, 2024

(PS thanks for raising these issues!)

@gurminder71
Copy link
Contributor Author

Pulled the latest code from main branch:

gurminder@gurminder-H2FYXYQN9R spanner-schema-diff-tool % mvn clean generate-resources compile assembly:single
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------< com.google.cloud.solutions:spanner-ddl-diff >-------------
[INFO] Building spanner-ddl-diff 1.0
[INFO]   from pom.xml
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- clean:3.3.2:clean (default-clean) @ spanner-ddl-diff ---
[INFO] Deleting /Users/gurminder/xxx/spanner-schema-diff-tool/target
[INFO] 
[INFO] --- exec:3.2.0:exec (jjt-2-concat) @ spanner-ddl-diff ---
[INFO] 
[INFO] --- ph-javacc:4.1.5:jjtree-javacc (jjt-2-compile) @ spanner-ddl-diff ---
ParserGeneratorCC Version 1.1.4 (Tree Builder)
(type "jjtree" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/xxx/spanner-schema-diff-tool/target/generated-sources/jjtree-src/DdlParser.jjt . . .
Warning: Bad option name "STATIC".  Option setting will be ignored.
opt:java
File "Node.java" does not exist.  Will create one.
File "SimpleNode.java" does not exist.  Will create one.
File "ASTany_reserved_word.java" does not exist.  Will create one.
File "ASTany_string_literal.java" does not exist.  Will create one.
File "ASTany_bytes_literal.java" does not exist.  Will create one.
File "ASTexpression.java" does not exist.  Will create one.
File "ASTgooglesql_operator.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren.java" does not exist.  Will create one.
File "ASTpart.java" does not exist.  Will create one.
File "ASTidentifier_list.java" does not exist.  Will create one.
File "ASTidentifier.java" does not exist.  Will create one.
File "ASTqualified_identifier_list.java" does not exist.  Will create one.
File "ASTpath.java" does not exist.  Will create one.
File "ASTint_value.java" does not exist.  Will create one.
File "ASTstring_value.java" does not exist.  Will create one.
File "ASTddl_statement.java" does not exist.  Will create one.
File "ASTdotted_path.java" does not exist.  Will create one.
File "ASTcreate_proto_bundle_statement.java" does not exist.  Will create one.
File "ASTalter_proto_bundle_statement.java" does not exist.  Will create one.
File "ASTinsert.java" does not exist.  Will create one.
File "ASTupdate.java" does not exist.  Will create one.
File "ASTdelete.java" does not exist.  Will create one.
File "ASTcreate_or_replace_statement.java" does not exist.  Will create one.
File "ASTalter_index_statement.java" does not exist.  Will create one.
File "ASTname.java" does not exist.  Will create one.
File "ASTadd.java" does not exist.  Will create one.
File "ASTdrop.java" does not exist.  Will create one.
File "ASTcolumn_name.java" does not exist.  Will create one.
File "ASToptions_clause.java" does not exist.  Will create one.
File "ASTcreate_database_statement.java" does not exist.  Will create one.
File "ASTdb_name.java" does not exist.  Will create one.
File "ASTcreate_table_statement.java" does not exist.  Will create one.
File "ASTcolumn_def.java" does not exist.  Will create one.
File "ASTnot_null.java" does not exist.  Will create one.
File "ASThidden.java" does not exist.  Will create one.
File "ASTcolumn_def_alter_attrs.java" does not exist.  Will create one.
File "ASTcolumn_def_alter.java" does not exist.  Will create one.
File "ASTset_not_null.java" does not exist.  Will create one.
File "ASTdrop_column_default.java" does not exist.  Will create one.
File "ASTdrop_not_null.java" does not exist.  Will create one.
File "ASTcolumn_type.java" does not exist.  Will create one.
File "ASTlength.java" does not exist.  Will create one.
File "ASTpgtype.java" does not exist.  Will create one.
File "ASTstruct_fields.java" does not exist.  Will create one.
File "ASTstruct_field.java" does not exist.  Will create one.
File "ASTcolumn_length.java" does not exist.  Will create one.
File "ASTgeneration_clause.java" does not exist.  Will create one.
File "ASTstored.java" does not exist.  Will create one.
File "ASTcolumn_default_clause.java" does not exist.  Will create one.
File "ASTcolumn_default_expression.java" does not exist.  Will create one.
File "ASTprimary_key.java" does not exist.  Will create one.
File "ASTforeign_key.java" does not exist.  Will create one.
File "ASTconstraint_name.java" does not exist.  Will create one.
File "ASTreferencing_columns.java" does not exist.  Will create one.
File "ASTreferenced_table.java" does not exist.  Will create one.
File "ASTreferenced_columns.java" does not exist.  Will create one.
File "ASTon_delete.java" does not exist.  Will create one.
File "ASTreferential_action.java" does not exist.  Will create one.
File "ASTno_action.java" does not exist.  Will create one.
File "ASTcascade.java" does not exist.  Will create one.
File "ASTstatement_token_no_paren.java" does not exist.  Will create one.
File "ASTcheck_constraint.java" does not exist.  Will create one.
File "ASTcheck_constraint_expression.java" does not exist.  Will create one.
File "ASTsynonym_clause.java" does not exist.  Will create one.
File "ASTsynonym.java" does not exist.  Will create one.
File "ASTtable_interleave_clause.java" does not exist.  Will create one.
File "ASTinterleave_in.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_clause.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_expression.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_function.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_column.java" does not exist.  Will create one.
File "ASTinterval_expression.java" does not exist.  Will create one.
File "ASTon_delete_clause.java" does not exist.  Will create one.
File "ASTcreate_index_statement.java" does not exist.  Will create one.
File "ASTunique_index.java" does not exist.  Will create one.
File "ASTnull_filtered.java" does not exist.  Will create one.
File "ASTtable.java" does not exist.  Will create one.
File "ASTcolumns.java" does not exist.  Will create one.
File "ASTcreate_index_where_clause.java" does not exist.  Will create one.
File "ASTindex_interleave_clause.java" does not exist.  Will create one.
File "ASTcreate_change_stream_statement.java" does not exist.  Will create one.
File "ASTchange_stream_for_clause.java" does not exist.  Will create one.
File "ASTall.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables_entry.java" does not exist.  Will create one.
File "ASTexplicit_columns.java" does not exist.  Will create one.
File "ASTcolumn.java" does not exist.  Will create one.
File "ASTcreate_role_statement.java" does not exist.  Will create one.
File "ASTprivilege.java" does not exist.  Will create one.
File "ASTprivileges.java" does not exist.  Will create one.
File "ASTtarget_type.java" does not exist.  Will create one.
File "ASTtable_function.java" does not exist.  Will create one.
File "ASTfunction.java" does not exist.  Will create one.
File "ASTchange_stream.java" does not exist.  Will create one.
File "ASTview.java" does not exist.  Will create one.
File "ASTsequence.java" does not exist.  Will create one.
File "ASTprivilege_target.java" does not exist.  Will create one.
File "ASTgrantees.java" does not exist.  Will create one.
File "ASTgrant_statement.java" does not exist.  Will create one.
File "ASTrevoke_statement.java" does not exist.  Will create one.
File "ASTcreate_sequence_statement.java" does not exist.  Will create one.
File "ASTkey_part.java" does not exist.  Will create one.
File "ASTdesc.java" does not exist.  Will create one.
File "ASTstored_column.java" does not exist.  Will create one.
File "ASTstored_column_list.java" does not exist.  Will create one.
File "ASToption_key_val.java" does not exist.  Will create one.
File "ASTkey.java" does not exist.  Will create one.
File "ASTnulll.java" does not exist.  Will create one.
File "ASTbool_true_val.java" does not exist.  Will create one.
File "ASTbool_false_val.java" does not exist.  Will create one.
File "ASTinteger_val.java" does not exist.  Will create one.
File "ASTstr_val.java" does not exist.  Will create one.
File "ASTstr_val_list.java" does not exist.  Will create one.
File "ASTor_replace.java" does not exist.  Will create one.
File "ASTsql_security.java" does not exist.  Will create one.
File "ASTcreate_view_statement.java" does not exist.  Will create one.
File "ASTview_definition.java" does not exist.  Will create one.
File "ASTstatement_tokens.java" does not exist.  Will create one.
File "ASTif_not_exists.java" does not exist.  Will create one.
File "ASTif_exists.java" does not exist.  Will create one.
File "ASTcreate_schema_statement.java" does not exist.  Will create one.
File "ASTcreate_model_statement.java" does not exist.  Will create one.
File "ASTinput.java" does not exist.  Will create one.
File "ASToutput.java" does not exist.  Will create one.
File "ASTremote.java" does not exist.  Will create one.
File "ASTdrop_statement.java" does not exist.  Will create one.
File "ASTindex.java" does not exist.  Will create one.
File "ASTrole.java" does not exist.  Will create one.
File "ASTmodel.java" does not exist.  Will create one.
File "ASTschema.java" does not exist.  Will create one.
File "ASTproto_bundle.java" does not exist.  Will create one.
File "ASTalter_database_statement.java" does not exist.  Will create one.
File "ASTdatabase_name.java" does not exist.  Will create one.
File "ASTalter_table_statement.java" does not exist.  Will create one.
File "ASTtable_name.java" does not exist.  Will create one.
File "ASTdrop_constraint.java" does not exist.  Will create one.
File "ASTdrop_row_deletion_policy.java" does not exist.  Will create one.
File "ASTdrop_synonym.java" does not exist.  Will create one.
File "ASTdrop_column.java" does not exist.  Will create one.
File "ASTalter_column.java" does not exist.  Will create one.
File "ASTset_on_delete.java" does not exist.  Will create one.
File "ASTrename_to.java" does not exist.  Will create one.
File "ASTadd_row_deletion_policy.java" does not exist.  Will create one.
File "ASTadd_synonym.java" does not exist.  Will create one.
File "ASTadd_column.java" does not exist.  Will create one.
File "ASTreplace_row_deletion_policy.java" does not exist.  Will create one.
File "ASTrename_op.java" does not exist.  Will create one.
File "ASTfrom_name.java" does not exist.  Will create one.
File "ASTto_name.java" does not exist.  Will create one.
File "ASTrename_statement.java" does not exist.  Will create one.
File "ASTalter_change_stream_statement.java" does not exist.  Will create one.
File "ASTdrop_for_all.java" does not exist.  Will create one.
File "ASTalter_sequence_statement.java" does not exist.  Will create one.
File "ASTalter_schema_statement.java" does not exist.  Will create one.
File "ASTalter_model_statement.java" does not exist.  Will create one.
File "ASTanalyze_statement.java" does not exist.  Will create one.
File "DdlParserTreeConstants.java" does not exist.  Will create one.
File "JJTDdlParserState.java" does not exist.  Will create one.
Annotated grammar generated successfully in /Users/gurminder/xxx/spanner-schema-diff-tool/target/javacc-1714490307887/node/DdlParser.jj
ParserGeneratorCC Version 1.1.4 (ParserGeneratorCC)
(type "pgcc" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/xxx/spanner-schema-diff-tool/target/javacc-1714490307887/node/DdlParser.jj ...
Warning: Line 49, Column 3: Bad option name "STATIC".  Option setting will be ignored.
Note: UNICODE_INPUT option is specified. Please make sure you create the parser/lexer using a Reader with the correct character encoding.
Warning: Choice conflict involving two expansions at
         line 934, column 5 and line 947, column 5 respectively.
         A common prefix is: "float64"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 935, column 5 and line 947, column 5 respectively.
         A common prefix is: "int64"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 936, column 5 and line 947, column 5 respectively.
         A common prefix is: "bool"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 937, column 5 and line 947, column 5 respectively.
         A common prefix is: "string"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 938, column 5 and line 947, column 5 respectively.
         A common prefix is: "bytes"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 939, column 5 and line 947, column 5 respectively.
         A common prefix is: "timestamp"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 940, column 5 and line 947, column 5 respectively.
         A common prefix is: "date"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 941, column 5 and line 947, column 5 respectively.
         A common prefix is: "numeric"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 942, column 5 and line 947, column 5 respectively.
         A common prefix is: "pg" "."
         Consider using a lookahead of 3 or more for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 943, column 5 and line 947, column 5 respectively.
         A common prefix is: "json"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict in [...] construct at line 959, column 3.
         Expansion nested within construct and expansion following construct
         have common prefixes, one of which is: <ID>
         Consider using a lookahead of 2 or more for nested expansion.
File "TokenMgrException.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "CharStream.java" does not exist.  Will create one.
File "AbstractCharStream.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated with 0 errors and 12 warnings.
[INFO] Processed 1 grammar
[INFO] 
[INFO] --- build-helper:3.5.0:add-source (add-source) @ spanner-ddl-diff ---
[INFO] Source directory: /Users/gurminder/xxx/spanner-schema-diff-tool/target/generated-sources/jjtree added.
[INFO] 
[INFO] --- exec:3.2.0:exec (jjt-2-concat) @ spanner-ddl-diff ---
[INFO] 
[INFO] --- ph-javacc:4.1.5:jjtree-javacc (jjt-2-compile) @ spanner-ddl-diff ---
ParserGeneratorCC Version 1.1.4 (Tree Builder)
(type "jjtree" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/xxx/spanner-schema-diff-tool/target/generated-sources/jjtree-src/DdlParser.jjt . . .
Warning: Bad option name "STATIC".  Option setting will be ignored.
opt:java
File "Node.java" does not exist.  Will create one.
File "SimpleNode.java" does not exist.  Will create one.
File "ASTany_reserved_word.java" does not exist.  Will create one.
File "ASTany_string_literal.java" does not exist.  Will create one.
File "ASTany_bytes_literal.java" does not exist.  Will create one.
File "ASTexpression.java" does not exist.  Will create one.
File "ASTgooglesql_operator.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_punctuation_no_paren.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren_without_dot.java" does not exist.  Will create one.
File "ASTgooglesql_statement_token_no_paren.java" does not exist.  Will create one.
File "ASTpart.java" does not exist.  Will create one.
File "ASTidentifier_list.java" does not exist.  Will create one.
File "ASTidentifier.java" does not exist.  Will create one.
File "ASTqualified_identifier_list.java" does not exist.  Will create one.
File "ASTpath.java" does not exist.  Will create one.
File "ASTint_value.java" does not exist.  Will create one.
File "ASTstring_value.java" does not exist.  Will create one.
File "ASTddl_statement.java" does not exist.  Will create one.
File "ASTdotted_path.java" does not exist.  Will create one.
File "ASTcreate_proto_bundle_statement.java" does not exist.  Will create one.
File "ASTalter_proto_bundle_statement.java" does not exist.  Will create one.
File "ASTinsert.java" does not exist.  Will create one.
File "ASTupdate.java" does not exist.  Will create one.
File "ASTdelete.java" does not exist.  Will create one.
File "ASTcreate_or_replace_statement.java" does not exist.  Will create one.
File "ASTalter_index_statement.java" does not exist.  Will create one.
File "ASTname.java" does not exist.  Will create one.
File "ASTadd.java" does not exist.  Will create one.
File "ASTdrop.java" does not exist.  Will create one.
File "ASTcolumn_name.java" does not exist.  Will create one.
File "ASToptions_clause.java" does not exist.  Will create one.
File "ASTcreate_database_statement.java" does not exist.  Will create one.
File "ASTdb_name.java" does not exist.  Will create one.
File "ASTcreate_table_statement.java" does not exist.  Will create one.
File "ASTcolumn_def.java" does not exist.  Will create one.
File "ASTnot_null.java" does not exist.  Will create one.
File "ASThidden.java" does not exist.  Will create one.
File "ASTcolumn_def_alter_attrs.java" does not exist.  Will create one.
File "ASTcolumn_def_alter.java" does not exist.  Will create one.
File "ASTset_not_null.java" does not exist.  Will create one.
File "ASTdrop_column_default.java" does not exist.  Will create one.
File "ASTdrop_not_null.java" does not exist.  Will create one.
File "ASTcolumn_type.java" does not exist.  Will create one.
File "ASTlength.java" does not exist.  Will create one.
File "ASTpgtype.java" does not exist.  Will create one.
File "ASTstruct_fields.java" does not exist.  Will create one.
File "ASTstruct_field.java" does not exist.  Will create one.
File "ASTcolumn_length.java" does not exist.  Will create one.
File "ASTgeneration_clause.java" does not exist.  Will create one.
File "ASTstored.java" does not exist.  Will create one.
File "ASTcolumn_default_clause.java" does not exist.  Will create one.
File "ASTcolumn_default_expression.java" does not exist.  Will create one.
File "ASTprimary_key.java" does not exist.  Will create one.
File "ASTforeign_key.java" does not exist.  Will create one.
File "ASTconstraint_name.java" does not exist.  Will create one.
File "ASTreferencing_columns.java" does not exist.  Will create one.
File "ASTreferenced_table.java" does not exist.  Will create one.
File "ASTreferenced_columns.java" does not exist.  Will create one.
File "ASTon_delete.java" does not exist.  Will create one.
File "ASTreferential_action.java" does not exist.  Will create one.
File "ASTno_action.java" does not exist.  Will create one.
File "ASTcascade.java" does not exist.  Will create one.
File "ASTstatement_token_no_paren.java" does not exist.  Will create one.
File "ASTcheck_constraint.java" does not exist.  Will create one.
File "ASTcheck_constraint_expression.java" does not exist.  Will create one.
File "ASTsynonym_clause.java" does not exist.  Will create one.
File "ASTsynonym.java" does not exist.  Will create one.
File "ASTtable_interleave_clause.java" does not exist.  Will create one.
File "ASTinterleave_in.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_clause.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_expression.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_function.java" does not exist.  Will create one.
File "ASTrow_deletion_policy_column.java" does not exist.  Will create one.
File "ASTinterval_expression.java" does not exist.  Will create one.
File "ASTon_delete_clause.java" does not exist.  Will create one.
File "ASTcreate_index_statement.java" does not exist.  Will create one.
File "ASTunique_index.java" does not exist.  Will create one.
File "ASTnull_filtered.java" does not exist.  Will create one.
File "ASTtable.java" does not exist.  Will create one.
File "ASTcolumns.java" does not exist.  Will create one.
File "ASTcreate_index_where_clause.java" does not exist.  Will create one.
File "ASTindex_interleave_clause.java" does not exist.  Will create one.
File "ASTcreate_change_stream_statement.java" does not exist.  Will create one.
File "ASTchange_stream_for_clause.java" does not exist.  Will create one.
File "ASTall.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables.java" does not exist.  Will create one.
File "ASTchange_stream_tracked_tables_entry.java" does not exist.  Will create one.
File "ASTexplicit_columns.java" does not exist.  Will create one.
File "ASTcolumn.java" does not exist.  Will create one.
File "ASTcreate_role_statement.java" does not exist.  Will create one.
File "ASTprivilege.java" does not exist.  Will create one.
File "ASTprivileges.java" does not exist.  Will create one.
File "ASTtarget_type.java" does not exist.  Will create one.
File "ASTtable_function.java" does not exist.  Will create one.
File "ASTfunction.java" does not exist.  Will create one.
File "ASTchange_stream.java" does not exist.  Will create one.
File "ASTview.java" does not exist.  Will create one.
File "ASTsequence.java" does not exist.  Will create one.
File "ASTprivilege_target.java" does not exist.  Will create one.
File "ASTgrantees.java" does not exist.  Will create one.
File "ASTgrant_statement.java" does not exist.  Will create one.
File "ASTrevoke_statement.java" does not exist.  Will create one.
File "ASTcreate_sequence_statement.java" does not exist.  Will create one.
File "ASTkey_part.java" does not exist.  Will create one.
File "ASTdesc.java" does not exist.  Will create one.
File "ASTstored_column.java" does not exist.  Will create one.
File "ASTstored_column_list.java" does not exist.  Will create one.
File "ASToption_key_val.java" does not exist.  Will create one.
File "ASTkey.java" does not exist.  Will create one.
File "ASTnulll.java" does not exist.  Will create one.
File "ASTbool_true_val.java" does not exist.  Will create one.
File "ASTbool_false_val.java" does not exist.  Will create one.
File "ASTinteger_val.java" does not exist.  Will create one.
File "ASTstr_val.java" does not exist.  Will create one.
File "ASTstr_val_list.java" does not exist.  Will create one.
File "ASTor_replace.java" does not exist.  Will create one.
File "ASTsql_security.java" does not exist.  Will create one.
File "ASTcreate_view_statement.java" does not exist.  Will create one.
File "ASTview_definition.java" does not exist.  Will create one.
File "ASTstatement_tokens.java" does not exist.  Will create one.
File "ASTif_not_exists.java" does not exist.  Will create one.
File "ASTif_exists.java" does not exist.  Will create one.
File "ASTcreate_schema_statement.java" does not exist.  Will create one.
File "ASTcreate_model_statement.java" does not exist.  Will create one.
File "ASTinput.java" does not exist.  Will create one.
File "ASToutput.java" does not exist.  Will create one.
File "ASTremote.java" does not exist.  Will create one.
File "ASTdrop_statement.java" does not exist.  Will create one.
File "ASTindex.java" does not exist.  Will create one.
File "ASTrole.java" does not exist.  Will create one.
File "ASTmodel.java" does not exist.  Will create one.
File "ASTschema.java" does not exist.  Will create one.
File "ASTproto_bundle.java" does not exist.  Will create one.
File "ASTalter_database_statement.java" does not exist.  Will create one.
File "ASTdatabase_name.java" does not exist.  Will create one.
File "ASTalter_table_statement.java" does not exist.  Will create one.
File "ASTtable_name.java" does not exist.  Will create one.
File "ASTdrop_constraint.java" does not exist.  Will create one.
File "ASTdrop_row_deletion_policy.java" does not exist.  Will create one.
File "ASTdrop_synonym.java" does not exist.  Will create one.
File "ASTdrop_column.java" does not exist.  Will create one.
File "ASTalter_column.java" does not exist.  Will create one.
File "ASTset_on_delete.java" does not exist.  Will create one.
File "ASTrename_to.java" does not exist.  Will create one.
File "ASTadd_row_deletion_policy.java" does not exist.  Will create one.
File "ASTadd_synonym.java" does not exist.  Will create one.
File "ASTadd_column.java" does not exist.  Will create one.
File "ASTreplace_row_deletion_policy.java" does not exist.  Will create one.
File "ASTrename_op.java" does not exist.  Will create one.
File "ASTfrom_name.java" does not exist.  Will create one.
File "ASTto_name.java" does not exist.  Will create one.
File "ASTrename_statement.java" does not exist.  Will create one.
File "ASTalter_change_stream_statement.java" does not exist.  Will create one.
File "ASTdrop_for_all.java" does not exist.  Will create one.
File "ASTalter_sequence_statement.java" does not exist.  Will create one.
File "ASTalter_schema_statement.java" does not exist.  Will create one.
File "ASTalter_model_statement.java" does not exist.  Will create one.
File "ASTanalyze_statement.java" does not exist.  Will create one.
File "DdlParserTreeConstants.java" does not exist.  Will create one.
File "JJTDdlParserState.java" does not exist.  Will create one.
Annotated grammar generated successfully in /Users/gurminder/xxx/spanner-schema-diff-tool/target/javacc-1714490308570/node/DdlParser.jj
ParserGeneratorCC Version 1.1.4 (ParserGeneratorCC)
(type "pgcc" with no arguments for help)
Warning: Bad option value in "-JDK_VERSION=8" will be ignored.
Reading from file /Users/gurminder/xxx/spanner-schema-diff-tool/target/javacc-1714490308570/node/DdlParser.jj ...
Warning: Line 49, Column 3: Bad option name "STATIC".  Option setting will be ignored.
Note: UNICODE_INPUT option is specified. Please make sure you create the parser/lexer using a Reader with the correct character encoding.
Warning: Choice conflict involving two expansions at
         line 934, column 5 and line 947, column 5 respectively.
         A common prefix is: "float64"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 935, column 5 and line 947, column 5 respectively.
         A common prefix is: "int64"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 936, column 5 and line 947, column 5 respectively.
         A common prefix is: "bool"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 937, column 5 and line 947, column 5 respectively.
         A common prefix is: "string"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 938, column 5 and line 947, column 5 respectively.
         A common prefix is: "bytes"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 939, column 5 and line 947, column 5 respectively.
         A common prefix is: "timestamp"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 940, column 5 and line 947, column 5 respectively.
         A common prefix is: "date"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 941, column 5 and line 947, column 5 respectively.
         A common prefix is: "numeric"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 942, column 5 and line 947, column 5 respectively.
         A common prefix is: "pg" "."
         Consider using a lookahead of 3 or more for earlier expansion.
Warning: Choice conflict involving two expansions at
         line 943, column 5 and line 947, column 5 respectively.
         A common prefix is: "json"
         Consider using a lookahead of 2 for earlier expansion.
Warning: Choice conflict in [...] construct at line 959, column 3.
         Expansion nested within construct and expansion following construct
         have common prefixes, one of which is: <ID>
         Consider using a lookahead of 2 or more for nested expansion.
File "TokenMgrException.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "CharStream.java" does not exist.  Will create one.
File "AbstractCharStream.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated with 0 errors and 12 warnings.
[INFO] Processed 1 grammar
[INFO] 
[INFO] --- build-helper:3.5.0:add-source (add-source) @ spanner-ddl-diff ---
[INFO] Source directory: /Users/gurminder/xxx/spanner-schema-diff-tool/target/generated-sources/jjtree added.
[INFO] 
[INFO] --- resources:3.3.1:resources (default-resources) @ spanner-ddl-diff ---
[INFO] skip non existing resourceDirectory /Users/gurminder/xxx/spanner-schema-diff-tool/src/main/resources
[INFO] 
[INFO] --- compiler:3.13.0:compile (default-compile) @ spanner-ddl-diff ---
[INFO] Recompiling the module because of changed source code.
[INFO] Compiling 176 source files with javac [debug target 8] to target/classes
An exception has occurred in the compiler (21.0.2). Please file a bug against the Java compiler via the Java bug reporting page (https://bugreport.java.com) after checking the Bug Database (https://bugs.java.com) for duplicates. Include your program, the following diagnostic, and the parameters passed to the Java compiler in your report. Thank you.
java.lang.IllegalAccessError: class com.google.errorprone.BaseErrorProneJavaCompiler (in unnamed module @0x6b09ce57) cannot access class com.sun.tools.javac.api.BasicJavacTask (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.api to unnamed module @0x6b09ce57
	at com.google.errorprone.BaseErrorProneJavaCompiler.addTaskListener(BaseErrorProneJavaCompiler.java:92)
	at com.google.errorprone.ErrorProneJavacPlugin.init(ErrorProneJavacPlugin.java:34)
	at jdk.compiler/com.sun.tools.javac.api.BasicJavacTask.initPlugin(BasicJavacTask.java:256)
	at jdk.compiler/com.sun.tools.javac.api.BasicJavacTask.initPlugins(BasicJavacTask.java:230)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.prepareCompiler(JavacTaskImpl.java:204)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.lambda$doCall$0(JavacTaskImpl.java:101)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.invocationHelper(JavacTaskImpl.java:152)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.doCall(JavacTaskImpl.java:100)
	at jdk.compiler/com.sun.tools.javac.api.JavacTaskImpl.call(JavacTaskImpl.java:94)
	at org.codehaus.plexus.compiler.javac.JavaxToolsCompiler.compileInProcess(JavaxToolsCompiler.java:126)
	at org.codehaus.plexus.compiler.javac.JavacCompiler.performCompile(JavacCompiler.java:214)
	at org.apache.maven.plugin.compiler.AbstractCompilerMojo.execute(AbstractCompilerMojo.java:1228)
	at org.apache.maven.plugin.compiler.CompilerMojo.execute(CompilerMojo.java:215)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:126)
	at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute2(MojoExecutor.java:328)
	at org.apache.maven.lifecycle.internal.MojoExecutor.doExecute(MojoExecutor.java:316)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:174)
	at org.apache.maven.lifecycle.internal.MojoExecutor.access$000(MojoExecutor.java:75)
	at org.apache.maven.lifecycle.internal.MojoExecutor$1.run(MojoExecutor.java:162)
	at org.apache.maven.plugin.DefaultMojosExecutionStrategy.execute(DefaultMojosExecutionStrategy.java:39)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:159)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:105)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:73)
	at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:53)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:118)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:261)
	at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:173)
	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:101)
	at org.apache.maven.cli.MavenCli.execute(MavenCli.java:906)
	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:283)
	at org.apache.maven.cli.MavenCli.main(MavenCli.java:206)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:283)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:226)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:407)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:348)
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR : 
[INFO] -------------------------------------------------------------
[ERROR] An unknown compilation problem occurred
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  1.845 s
[INFO] Finished at: 2024-04-30T08:18:29-07:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile (default-compile) on project spanner-ddl-diff: Compilation failure
[ERROR] An unknown compilation problem occurred
[ERROR] 
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException

@nielm nielm closed this as completed in #100 May 1, 2024
@nielm
Copy link
Collaborator

nielm commented May 1, 2024

Pulled the latest code from main branch:

The main branch did not have the fix in at the time - it was in my PR - because at the time I posted, I could not test the fix - but since then I was able to repro and verify that #100 fixes the issue.

now that #100 is merged, main should include the fix (by updating pom.xml with the javac args)

@gurminder71
Copy link
Contributor Author

Verified that it is working

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants