google / j2objc

A Java to iOS Objective-C translation tool and runtime.
http://j2objc.org
Apache License 2.0
5.99k stars 968 forks source link

Unable to 'make dist' with latest HEAD #1955

Closed mungler closed 1 year ago

mungler commented 1 year ago

Hi,

I am unable to 'make dist' with a local checkout with HEAD at commit 98b3edd1d78fc3b77762caf575430b85c0c2bc90:

rory@Eddie ~/W/j2objc-git (master)> make clean
rory@Eddie ~/W/j2objc-git (master)> make dist
Locale: en_GB.UTF-8
Darwin Eddie.local 21.6.0 Darwin Kernel Version 21.6.0: Mon Aug 22 20:17:10 PDT 2022; root:xnu-8020.140.49~2/RELEASE_X86_64 x86_64
Xcode 14.1 Build version 14B47b
Apple clang version 14.0.0 (clang-1400.0.29.202)
Target: x86_64-apple-darwin21.6.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

Environment:
CHRUBY_FISH_VERSION=0.8.2
CHRUBY_ROOT=/usr/local/Cellar/chruby/0.3.9
CHRUBY_VERSION=0.3.9
CPPFLAGS=-I//usr/local/opt/openjdk/include
DEPLOY_ROOT=/Users/rory/Workspace
DEVELOPMENT_API_SERVER=venus
HOME=/Users/rory
HOMEBREW_ROOT=/usr/local
J2OBJC_ARCHS=macosx iphone64 iphone64e watchosv7k watchos64 watchsimulator watchsimulator64 simulator simulator64 maccatalyst appletvos appletvsimulator macosx64 maccatalyst64
J2OBJC_HOME=/Users/rory/Workspace/j2objc-2.8-min
JAVA_HOME=/Library/Java/JavaVirtualMachines/openjdk-11.jdk/Contents/Home
LANG=en_GB.UTF-8
LOGNAME=rory
LaunchInstanceID=6F71AB4B-A21F-4492-B9A8-82C155696001
MAKEFLAGS=
MAKELEVEL=1
MFLAGS=
PATH=/usr/local/bin:/usr/local/opt/openjdk@11/bin:/opt/homebrew/opt/openjdk@11/bin:/opt/local/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin:/Applications/VMware Fusion.app/Contents/Public
PWD=/Users/rory/Workspace/j2objc-git
RUBIES=/Users/rory/.rubies/ruby-2.7.1 /Users/rory/.rubies/ruby-3.1.2
SECURITYSESSIONID=186a5
SHELL=/usr/local/bin/fish
SHLVL=2
SSH_AUTH_SOCK=/private/tmp/com.apple.launchd.E4ekkxxRfN/Listeners
TERM=xterm-256color
TERM_PROGRAM=Apple_Terminal
TERM_PROGRAM_VERSION=445
TERM_SESSION_ID=20D50C09-5128-4AB2-B668-63C1C80E3AB1
TMPDIR=/var/folders/zy/z0pn_gn16_b35bjpgm5fh0k80000gn/T/
USER=rory
XPC_FLAGS=0x0
XPC_SERVICE_NAME=0

Building j2objc annotations
mvn -q generate-resources dependency:sources
building j2objc jar
src/main/java/com/google/devtools/j2objc/util/ExternalAnnotations.java:25: error: package org.checkerframework.afu.scenelib.el does not exist
import org.checkerframework.afu.scenelib.el.AScene;
                                           ^
src/main/java/com/google/devtools/j2objc/util/ExternalAnnotations.java:26: error: package org.checkerframework.afu.scenelib.io does not exist
import org.checkerframework.afu.scenelib.io.IndexFileParser;
                                           ^
src/main/java/com/google/devtools/j2objc/util/ExternalAnnotations.java:38: error: cannot find symbol
  private final AScene scene = new AScene();
                ^
  symbol:   class AScene
  location: class ExternalAnnotations
src/main/java/com/google/devtools/j2objc/util/ExternalAnnotations.java:63: error: cannot find symbol
  public AScene getScene() {
         ^
  symbol:   class AScene
  location: class ExternalAnnotations
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:54: error: package org.checkerframework.afu.scenelib does not exist
import org.checkerframework.afu.scenelib.Annotation;
                                        ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:55: error: package org.checkerframework.afu.scenelib.el does not exist
import org.checkerframework.afu.scenelib.el.AClass;
                                           ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:56: error: package org.checkerframework.afu.scenelib.el does not exist
import org.checkerframework.afu.scenelib.el.AElement;
                                           ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:57: error: package org.checkerframework.afu.scenelib.el does not exist
import org.checkerframework.afu.scenelib.el.AField;
                                           ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:58: error: package org.checkerframework.afu.scenelib.el does not exist
import org.checkerframework.afu.scenelib.el.AMethod;
                                           ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:59: error: package org.checkerframework.afu.scenelib.el does not exist
import org.checkerframework.afu.scenelib.el.AScene;
                                           ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:60: error: package org.checkerframework.afu.scenelib.field does not exist
import org.checkerframework.afu.scenelib.field.AnnotationFieldType;
                                              ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:61: error: package org.checkerframework.afu.scenelib.field does not exist
import org.checkerframework.afu.scenelib.field.BasicAFT;
                                              ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:62: error: package org.checkerframework.afu.scenelib.field does not exist
import org.checkerframework.afu.scenelib.field.EnumAFT;
                                              ^
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:68: error: cannot find symbol
  private final AScene annotatedAst;
                ^
  symbol:   class AScene
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:72: error: cannot find symbol
  private final Deque<Optional<AElement>> annotatedElementStack = new ArrayDeque<>();
                               ^
  symbol:   class AElement
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:172: error: cannot find symbol
  private void recordAnnotations(AnnotatedConstruct construct, Set<Annotation> annotations) {
                                                                   ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:181: error: cannot find symbol
  private void injectAnnotationsToNode(BodyDeclaration declaration, Set<Annotation> annotations) {
                                                                        ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:193: error: cannot find symbol
  private void reportNoSuchClass(Annotation annotation) {
                                 ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:202: error: cannot find symbol
  private GeneratedAnnotationMirror generateAnnotationMirror(Annotation annotation) {
                                                             ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:222: error: cannot find symbol
      Annotation annotation, AnnotationFieldType type, String name, String value) {
      ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:222: error: cannot find symbol
      Annotation annotation, AnnotationFieldType type, String name, String value) {
                             ^
  symbol:   class AnnotationFieldType
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/util/ExternalAnnotations.java:38: error: cannot find symbol
  private final AScene scene = new AScene();
                                   ^
  symbol:   class AScene
  location: class ExternalAnnotations
src/main/java/com/google/devtools/j2objc/util/ExternalAnnotations.java:56: error: cannot find symbol
    IndexFileParser.parseFile(file, scene);
    ^
  symbol:   variable IndexFileParser
  location: class ExternalAnnotations
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:86: error: cannot find symbol
    AClass annotatedElement = annotatedAst.classes.get(elementName);
    ^
  symbol:   class AClass
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:113: error: cannot find symbol
    AClass annotatedParent = (AClass) annotatedElementStack.peekLast().get();
    ^
  symbol:   class AClass
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:113: error: cannot find symbol
    AClass annotatedParent = (AClass) annotatedElementStack.peekLast().get();
                              ^
  symbol:   class AClass
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:117: error: cannot find symbol
    AMethod annotatedMethod = annotatedParent.methods.get(methodName);
    ^
  symbol:   class AMethod
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:119: error: cannot find symbol
      Set<Annotation> annotations = new LinkedHashSet<>();
          ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:133: error: cannot find symbol
    AClass annotatedParent = (AClass) annotatedElementStack.peekLast().get();
    ^
  symbol:   class AClass
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:133: error: cannot find symbol
    AClass annotatedParent = (AClass) annotatedElementStack.peekLast().get();
                              ^
  symbol:   class AClass
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:135: error: cannot find symbol
    AField annotatedField = annotatedParent.fields.get(ElementUtil.getName(element));
    ^
  symbol:   class AField
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:159: error: cannot find symbol
    AClass annotatedElement = annotatedAst.classes.get(elementName);
    ^
  symbol:   class AClass
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:173: error: cannot find symbol
    for (Annotation annotation : annotations) {
         ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:182: error: cannot find symbol
    for (Annotation annotation : annotations) {
         ^
  symbol:   class Annotation
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:214: error: cannot find symbol
      AnnotationFieldType fieldType = annotation.def.fieldTypes.get(fieldName);
      ^
  symbol:   class AnnotationFieldType
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:224: error: cannot find symbol
    if (type instanceof BasicAFT) {
                        ^
  symbol:   class BasicAFT
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:225: error: cannot find symbol
      Class<?> enclosedType = ((BasicAFT) type).type;
                                ^
  symbol:   class BasicAFT
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:233: error: cannot find symbol
    } else if (type instanceof EnumAFT) {
                               ^
  symbol:   class EnumAFT
  location: class ExternalAnnotationInjector
src/main/java/com/google/devtools/j2objc/translate/ExternalAnnotationInjector.java:234: error: cannot find symbol
      String enumTypeString = annotation.def.name + "." + ((EnumAFT) type).typeName;
                                                            ^
  symbol:   class EnumAFT
  location: class ExternalAnnotationInjector
Note: src/main/java/com/google/devtools/j2objc/pipeline/InputFilePreprocessor.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
39 errors
make[1]: *** [/Users/rory/Workspace/j2objc-git/translator/build_result/j2objc.jar] Error 1
make: *** [translator] Error 2
rory@Eddie ~/W/j2objc-git (master) [2]> 
tomball commented 1 year ago

Fixed.