Well, as Andrew mentioned, there was already a -verbose flag in the compiler,
so instead of repurposing that, I added a -diagnostics optoin that will cause
output around thread locks. The -diagnostics option is a bit-flag in order to
control what classes output lock info. The flags are:
public static final int NODE_REFERENCES = 1;
public static final int COUNTER = 2;
public static final int CLASS_DEFINITION_BASE = 4;
public static final int SYNCHRONIZED_GRAPH = 8;
public static final int ASTOKEN = 16;
public static final int CONFIG_MANAGER = 32;
public static final int ASSCOPECACHE = 64;
public static final int FILE_NODE = 128;
public static final int WORKSPACE = 256;
public static final int SYMBOL_DECORATOR_PROVIDER = 512;
public static final int INT_MAP = 1024;
public static final int DA_BYTEARRAY = 2048;
public static final int FILE_UTILS = 4096;
public static final int ROYALEJSPROJECT = 8192;
So, -diagnostics=16383 turns everything on. I found that DA_BYTEARRAY was
being too noisy, so you might start with -diagnostics=14335. If you put all of
the classes back in your SWC and try to compile it, it should hang and
hopefully the output will tell us something. That said, I did refactor one
class to make its lock sections smaller so there is some chance compilation
will now just work.
HTH,
-Alex
On 7/20/18, 9:10 PM, "Alex Harui" <[email protected]> wrote:
I would expect that there are a bunch of threads all waiting on each other.
JSTarget is the entry point to creating all of these threads (one per source
file, including already compiled files from SWCs). IIRC, the last person who
had this problem was able to take a bunch of his classes out of the set being
compiled for a SWC and found that the compilation then completed (with few
enough errors to generate a useful API report). Apparently some of those files
were resulting in the deadlock. Which ones we won't know until we get more
verbose output.
HTH,
-Alex
On 7/20/18, 5:56 PM, "bhau" <[email protected]> wrote:
It is hanging in Target class (workSet.size never gets to count 0) to
find
dependencies.
May be I am missing something here. Do I have to remove all adobe class
dependencies in my module source classes before running compc command ?
Thanks,
--Bhau
--
Sent from:
https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Fapache-royale-development.20373.n8.nabble.com%2F&data=02%7C01%7Caharui%40adobe.com%7C2e3d100eb6d54fbcf43308d5eea4c86a%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C1%7C636677313854887793&sdata=H83WyP4bKg31fDds2TrLUJJ6rsu5ygcXd8pOKxp1AxQ%3D&reserved=0