Hi Lee,

I’ve found a potential solution to address the relative path issue that you 
mentioned below.
The `relativePath` property on the POM’s <parent> element provides a way to 
lookup a dependency from a remote repository instead of the default order of 
precedence.

This change is introduced in 
https://github.com/apache/datasketches-memory/pull/133 
<https://github.com/apache/datasketches-memory/pull/133>.

David

> On 16 Jul 2021, at 22:16, leerho <[email protected]> wrote:
> 
> Dave,
>   After this recent merge #132, this problem reappeared:
> 
> Project build error: 'parent.relativePath' of POM
> org.apache.datasketches:datasketches-memory:2.0.0-SNAPSHOT
> (/Users/lrhodes/dev/git/Apache/datasketches-memory2/datasketches-memory/pom.xml)
> points at org.apache.datasketches:datasketches-memory-root
> instead of org.apache:apache,
> please verify your project structure. 
> pom.xml /datasketches-memory line 27 Maven pom Loading Problem
> 
> I find this error description puzzling ... because the pom at the "root" of 
> the project points to org.apache:apache as well as the pom under 
> datasketches-memory.  Clearly it is confused.
> 
> On Fri, Jul 16, 2021 at 5:48 AM David Cromberge 
> <[email protected] <mailto:[email protected]>> wrote:
> Thanks for your help with the Eclipse build, Lee.  I’ll merge the fixes we 
> have made into master and integrate your notes into the documentation 
> afterwards.
> David
> 
>> On 15 Jul 2021, at 19:30, leerho <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> I cleaned up a few more nits and had to add back the 
>> SuppressWarnings("restricted").  (this is a continuous loop)
>> 
>> I also have created the following startup documentation for Eclipse: 
>> Use it as you see fit.
>> 
>> Lee.
>> 
>> On Mon, Jul 12, 2021 at 2:01 PM David Cromberge 
>> <[email protected] <mailto:[email protected]>> wrote:
>> Thank you for testing on the branch that I have created.  
>> 
>> Please be aware that I have updated the documentation for toolchains and 
>> eclipse to further clarify the necessary steps for setting up a local IDE.
>> I have already updated the toolchains documentation to explain how a 
>> developer can setup their local environment variables, (see 
>> docs/toolchains.md).
>> 
>> Furthermore, to address your Eclipse errors you need to ensure that you have 
>> installed the requisite JREs in Eclipse, and configured each module to use 
>> the correct JRE.  Unfortunately it does not synchronise correctly with 
>> Maven.  
>> It is also necessary to add JPMS module exports for datasketches-java9, to 
>> provide access to some of the JDK internals (namely, the cleaner).  Note 
>> that the `datasketches-java9-tests` module has been removed as this did not 
>> play well with Eclipse.
>> 
>> It is my hope that the updates I made earlier today to the documentation 
>> should be sufficient to correct these errors (see docs/eclipse.md).  
>> 
>> I’ve tested these steps on a vanilla zip of the branch on the latest Eclipse 
>> IDE (June 2021 -  see below).  If you experience difficulties, I’d be happy 
>> to jump on a call and summarise any shortcomings on this thread.
>> 
>> David
>> 
>> <Screenshot 2021-07-12 at 21.40.28.png>
>> 
>> 
>> 
>> 
>>> On 12 Jul 2021, at 20:03, leerho <[email protected] 
>>> <mailto:[email protected]>> wrote:
>>> 
>>> I am now testing exclusively from the build-fix-errors branch
>>> By removing JDK 10 and 12 from toolchains.xml and from the matrix in 
>>> maven.yml I was able to successfully execute
>>>  mvn clean install --toolchains .github/workflows/.toolchains.xml
>>> We still need docs to explain that the developer may need to do this based 
>>> on what JDKs are in the developer's environment.
>>> In Eclipse, .gitignore, .project, .classpath, and .settings files appear in 
>>> all the datasketches-memory* sub maven-module directories. 
>>> So the root .gitignore file needs to be updated to make sure these files do 
>>> not propagate into version control. (Attached)
>>> Eclipse will still not compile.  Attached is the error logs.
>>> 
>>> <Screen Shot 2021-07-12 at 11.12.54 AM.png>
>>> 
>>> On Fri, Jul 9, 2021 at 7:55 PM leerho <[email protected] 
>>> <mailto:[email protected]>> wrote:
>>> More precisely: 
>>>  mvn clean package eclipse:eclipse --toolchains 
>>> .github/workflows/.toolchains.xml
>>> Works.
>>> 
>>> Now I'm going to see if I can get Eclipse working :)
>>> 
>>> 
>>> On Fri, Jul 9, 2021 at 3:19 PM David Cromberge 
>>> <[email protected] <mailto:[email protected]>> 
>>> wrote:
>>> OK -
>>> 
>>> I need to investigate exactly how the module dependencies are getting 
>>> resolved by some plugins, as I had a similar issue with the javadoc plugin 
>>> and its class paths.
>>> 
>>> To illustrate the point, the eclipse plugin command `mvn clean package 
>>> eclipse:eclipse` will succeed.
>>> 
>>> As I mentioned, I’ll try and correct these issues as soon as possible via a 
>>> follow-up PR.
>>> 
>>> 
>>>> On 9 Jul 2021, at 23:08, leerho <[email protected] 
>>>> <mailto:[email protected]>> wrote:
>>>> 
>>>> No.  Reverting can be messy.  I prefer we just keep moving forward ...   
>>>> It is not a crisis if master isn't perfect, as long as we can fix it 
>>>> reasonably quickly :)
>>>> 
>>>> 
>>>> On Fri, Jul 9, 2021 at 3:03 PM David Cromberge 
>>>> <[email protected] <mailto:[email protected]>> 
>>>> wrote:
>>>> Interesting, I have not yet tested the enclose compatibly in that manner.  
>>>> I tested using the IDE itself.
>>>> 
>>>> As an update, I have created a new toolchain for the user, and am looking 
>>>> at the surefire plugin mechanism for scanning dependencies.
>>>> 
>>>> I’ll add the mvn eclipse:eclipse command to the list - I agree, it should 
>>>> not be scanning maven central.  
>>>> 
>>>> Would you prefer I revert the PR merge whilst I address these issues?
>>>> 
>>>> 
>>>> David
>>>> 
>>>>> On 9 Jul 2021, at 22:55, leerho <[email protected] 
>>>>> <mailto:[email protected]>> wrote:
>>>>> 
>>>>> Ok, I removed the <classifier>tests</classifier> from the pom. 
>>>>> 
>>>>> As long as the entries in the toolchain match the JDKs I have installed 
>>>>> and the matrix versions also match then
>>>>> 
>>>>> mvn clean install --toolchains .github/workflows/.toolchains.xml  WORKS!
>>>>> 
>>>>> However, when I try: mvn clean eclipse:eclipse --toolchains 
>>>>> .github/workflows/.toolchains.xml
>>>>> it fails with
>>>>> [ERROR] Failed to execute goal 
>>>>> org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce 
>>>>> (enforce-banned-dependencies) on project datasketches-memory-java8-tests: 
>>>>> Execution enforce-banned-dependencies of goal 
>>>>> org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce failed: 
>>>>> org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException: 
>>>>> Could not resolve following dependencies: 
>>>>> [org.apache.datasketches:datasketches-memory-java8:jar:2.0.0-SNAPSHOT 
>>>>> (test)]: Could not resolve dependencies for project 
>>>>> org.apache.datasketches:datasketches-memory-java8-tests:jar:2.0.0-SNAPSHOT:
>>>>>  org.apache.datasketches:datasketches-memory-java8:jar:2.0.0-SNAPSHOT was 
>>>>> not found in 
>>>>> https://repository.apache.org/content/groups/snapshots/org/apache/datasketches/
>>>>>  
>>>>> <https://www.google.com/url?q=https://www.google.com/url?q%3Dhttps://www.google.com/url?q%253Dhttps://www.google.com/url?q%25253Dhttps://www.google.com/url?q%2525253Dhttps://repository.apache.org/content/groups/snapshots/org/apache/datasketches/%25252526source%2525253Dgmail-imap%25252526ust%2525253D1626472557000000%25252526usg%2525253DAOvVaw2ropAlkfYzKFBNVxduUwHm%252526source%25253Dgmail-imap%252526ust%25253D1626473317000000%252526usg%25253DAOvVaw2XzzitEqlgUU_DwnzUD6qE%2526source%253Dgmail-imap%2526ust%253D1626721420000000%2526usg%253DAOvVaw3jul9wTMp1jhZN-2t-gZUX%26source%3Dgmail-imap%26ust%3D1626978674000000%26usg%3DAOvVaw05LfymFkmAL6GpTChtBqlI&source=gmail-imap&ust=1627075026000000&usg=AOvVaw3ux8-aAnXzbJkS3uzll11i>
>>>>>  during a previous attempt. This failure was cached in the local 
>>>>> repository and resolution is not reattempted until the update interval of 
>>>>> apache.snapshots has elapsed or updates are forced
>>>>> The irony is that I think 
>>>>> org.apache.datasketches:datasketches-memory-java8:jar:2.0.0-SNAPSHOT 
>>>>> exists in my .m2:
>>>>> (base) datasketches $ pwd
>>>>> /Users/lrhodes/.m2/repository/org/apache/datasketches
>>>>> (base) datasketches $ tree
>>>>> .
>>>>> ├── datasketches-memory
>>>>> ...
>>>>> │   ├── 2.0.0
>>>>> │   │   ├── datasketches-memory-2.0.0.jar.lastUpdated
>>>>> │   │   └── datasketches-memory-2.0.0.pom.lastUpdated
>>>>> │   ├── 2.0.0-SNAPSHOT
>>>>> │   │   ├── _remote.repositories
>>>>> │   │   ├── datasketches-memory-2.0.0-SNAPSHOT-javadoc.jar
>>>>> │   │   ├── datasketches-memory-2.0.0-SNAPSHOT-sources.jar
>>>>> │   │   ├── datasketches-memory-2.0.0-SNAPSHOT-test-sources.jar
>>>>> │   │   ├── datasketches-memory-2.0.0-SNAPSHOT-tests.jar
>>>>> │   │   ├── datasketches-memory-2.0.0-SNAPSHOT.jar
>>>>> │   │   ├── datasketches-memory-2.0.0-SNAPSHOT.pom
>>>>> │   │   └── maven-metadata-local.xml
>>>>> │   ├── maven-metadata-apache.releases.https.xml
>>>>> │   ├── maven-metadata-central.xml
>>>>> │   ├── maven-metadata-central.xml.sha1
>>>>> │   ├── maven-metadata-local.xml
>>>>> │   └── resolver-status.properties
>>>>> ├── datasketches-memory-java8
>>>>> │   └── 2.0.0-SNAPSHOT
>>>>> │       ├── datasketches-memory-java8-2.0.0-SNAPSHOT.jar.lastUpdated
>>>>> │       └── resolver-status.properties
>>>>> ├── datasketches-memory-java8-tests
>>>>> │   └── 2.0.0-SNAPSHOT
>>>>> │       ├── 
>>>>> datasketches-memory-java8-tests-2.0.0-SNAPSHOT-tests.jar.lastUpdated
>>>>> │       └── resolver-status.properties
>>>>> ...  
>>>>> However when I open the contents of one of those "lastUpdated" files I 
>>>>> see:
>>>>> #NOTE: This is a Maven Resolver internal implementation file, its format 
>>>>> can be changed without prior notice.
>>>>> #Fri Jul 09 11:14:59 PDT 2021
>>>>> https\://repository.apache.org/content/groups/snapshots/org/apache/datasketches/.lastUpdated=1625854499312
>>>>>  
>>>>> <https://www.google.com/url?q=https://www.google.com/url?q%3Dhttps://www.google.com/url?q%253Dhttps://www.google.com/url?q%25253Dhttps://www.google.com/url?q%2525253Dhttp://repository.apache.org/content/groups/snapshots/org/apache/datasketches/.lastUpdated%252525253D1625854499312%25252526source%2525253Dgmail-imap%25252526ust%2525253D1626472557000000%25252526usg%2525253DAOvVaw0V0lZQnMhTvqogOHBwW7Xh%252526source%25253Dgmail-imap%252526ust%25253D1626473317000000%252526usg%25253DAOvVaw0HxRrCpM1A83hYCHwrpZxu%2526source%253Dgmail-imap%2526ust%253D1626721420000000%2526usg%253DAOvVaw2UcqPMdCHRg5CZfJUsIiYp%26source%3Dgmail-imap%26ust%3D1626978674000000%26usg%3DAOvVaw0TQqr10-_nXvzZtt3_adfH&source=gmail-imap&ust=1627075026000000&usg=AOvVaw361Xuf1-ZryCKIxA17b77m>
>>>>> https\://repository.apache.org/content/groups/snapshots/org/apache/datasketches/.error=
>>>>>  
>>>>> <https://www.google.com/url?q=https://www.google.com/url?q%3Dhttps://www.google.com/url?q%253Dhttps://www.google.com/url?q%25253Dhttps://www.google.com/url?q%2525253Dhttp://repository.apache.org/content/groups/snapshots/org/apache/datasketches/.error%252525253D%25252526source%2525253Dgmail-imap%25252526ust%2525253D1626472557000000%25252526usg%2525253DAOvVaw1bOghQQaqPVA0g29hbDYSg%252526source%25253Dgmail-imap%252526ust%25253D1626473317000000%252526usg%25253DAOvVaw0cycrZM7NX9X9VhR_fgRTA%2526source%253Dgmail-imap%2526ust%253D1626721420000000%2526usg%253DAOvVaw1eT8UXnch8Xg2ZWWC_X34X%26source%3Dgmail-imap%26ust%3D1626978674000000%26usg%3DAOvVaw0MLJl5K3qOV2sEDhszqRDu&source=gmail-imap&ust=1627075026000000&usg=AOvVaw1A5XDxyvM6J3CgCPlLCoJf>
>>>>>  (blank)
>>>>> So it appears to reference the apache repo! Which it should not, I would 
>>>>> think.
>>>>> 
>>>>> Even though I can get maven to run, so far I haven't been able to get 
>>>>> Eclipse to run.
>>>>> 
>>>>> Lee.
>>>>> 
>>>>> 
>>>>> On Fri, Jul 9, 2021 at 1:18 PM David Cromberge 
>>>>> <[email protected] <mailto:[email protected]>> 
>>>>> wrote:
>>>>> Lee,
>>>>> 
>>>>> Apologies for the issues that you are experiencing with the build.
>>>>> 
>>>>> In order to support multiple versions of the JVM, the multi-release JAR 
>>>>> is tested using the java8 tests suite.  The tests are required as a 
>>>>> module dependency and reflection is used to run all the tests from the 
>>>>> java8 tests JAR.
>>>>> This process requires the use of a dependency classifier which is 
>>>>> responsible for these errors.
>>>>> 
>>>>> As a workaround, you can temporarily install the dependency locally, 
>>>>> using `mvn install`, or you can manually edit the 
>>>>> datasketches-memory-tests pom.xml to remove the classifier:
>>>>> 
>>>>> <Screenshot 2021-07-09 at 21.16.53.png>
>>>>> 
>>>>> 
>>>>> Admittedly, it’s not ideal to use the GitHub actions toolchains as a user 
>>>>> template.
>>>>> 
>>>>> I’ll look into these problems in the interim and create a follow-up pull 
>>>>> request to address them,
>>>>> 
>>>>> Thank you for your patience,
>>>>> David
>>>>> 
>>>>> 
>>>>>> On 9 Jul 2021, at 20:54, leerho <[email protected] 
>>>>>> <mailto:[email protected]>> wrote:
>>>>>> 
>>>>>> Hmmm.  
>>>>>> OK, :-(  I read the README, and it says I only need JDK 8,9 and 11 
>>>>>> installed. 
>>>>>> 
>>>>>> With JAVA_HOME pointing to JDK 11, I tried 
>>>>>>  mvn clean compile --toolchains .github/workflows/.toolchains.xml
>>>>>>  
>>>>>> I get the following errors:
>>>>>> [ERROR] Misconfigured toolchain.
>>>>>> org.apache.maven.toolchain.MisconfiguredToolchainException: Non-existing 
>>>>>> JDK home configuration at 
>>>>>> /Users/lrhodes/dev/git/Apache/datasketches-memory2/${env.JAVA10_HOME}
>>>>>> [ERROR] Misconfigured toolchain.
>>>>>> org.apache.maven.toolchain.MisconfiguredToolchainException: Non-existing 
>>>>>> JDK home configuration at 
>>>>>> /Users/lrhodes/dev/git/Apache/datasketches-memory2/${env.JAVA12_HOME}
>>>>>> I think it is telling me I need 10 and 12 installed too.  
>>>>>> So I temporarily removed 10 and 12 from the matrix test (I don't have 
>>>>>> those installed), 
>>>>>> and I removed 10 and 12 from the toolchain.  
>>>>>> 
>>>>>> Now it gives me this error:
>>>>>> [ERROR] Failed to execute goal 
>>>>>> org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce 
>>>>>> (enforce-banned-dependencies) on project datasketches-memory-tests: 
>>>>>> Execution enforce-banned-dependencies of goal 
>>>>>> org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce failed: 
>>>>>> org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException:
>>>>>>  
>>>>>> Could not resolve following dependencies: 
>>>>>> [org.apache.datasketches:datasketches-memory-java8-tests:jar:tests:2.0.0-SNAPSHOT
>>>>>>  (test)]: 
>>>>>> Could not resolve dependencies for project 
>>>>>> org.apache.datasketches:datasketches-memory-tests:jar:2.0.0-SNAPSHOT:
>>>>>> org.apache.datasketches:datasketches-memory-java8-tests:jar:tests:2.0.0-SNAPSHOT
>>>>>>  
>>>>>> was not found in 
>>>>>> https://repository.apache.org/content/groups/snapshots/org/apache/datasketches/
>>>>>>  
>>>>>> <https://www.google.com/url?q=https://www.google.com/url?q%3Dhttps://www.google.com/url?q%253Dhttps://www.google.com/url?q%25253Dhttps://www.google.com/url?q%2525253Dhttps://www.google.com/url?q%252525253Dhttps://repository.apache.org/content/groups/snapshots/org/apache/datasketches/%2525252526source%252525253Dgmail-imap%2525252526ust%252525253D1626465263000000%2525252526usg%252525253DAOvVaw0zU9ASggdO53YTS6qMd0Bs%25252526source%2525253Dgmail-imap%25252526ust%2525253D1626472557000000%25252526usg%2525253DAOvVaw2YXDOOchjoKno5SYKbsC0l%252526source%25253Dgmail-imap%252526ust%25253D1626473317000000%252526usg%25253DAOvVaw0pqXemU9jqjhcLDEZ_VyZC%2526source%253Dgmail-imap%2526ust%253D1626721420000000%2526usg%253DAOvVaw300347HftUcKUf-wTEjBy-%26source%3Dgmail-imap%26ust%3D1626978674000000%26usg%3DAOvVaw3VZIN0iceODaebUbQYCnfq&source=gmail-imap&ust=1627075026000000&usg=AOvVaw3Xo9OB4F_F1lR0rFUEUC_C>
>>>>>>  
>>>>>> during a previous attempt. This failure was cached in the local 
>>>>>> repository and resolution is not reattempted until the update interval 
>>>>>> of apache.snapshots has elapsed or updates are forced
>>>>>> Hmm.  It should not be trying to locate the 2.0.0-SNAPSHOT from Apache 
>>>>>> unless it can't find it locally in my .m2. But I can't create it in .m2 
>>>>>> unless I do an mvn install;  and before I can do a maven install, I need 
>>>>>> to successfully compile. I'm stuck in a do-loop.
>>>>>> 
>>>>>> Next I tried removing all 9+ versions from both the toolchain and the 
>>>>>> matrix. I get the same error.
>>>>>> 
>>>>>> Lee.
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On Fri, Jul 9, 2021 at 12:02 PM leerho <[email protected] 
>>>>>> <mailto:[email protected]>> wrote:
>>>>>> David,
>>>>>> After the merge of PR#131 and doing a new clone of :
>>>>>> Setting JAVA_HOME to JDK8
>>>>>> mvn clean compile
>>>>>> successful compile of java 8, but fails on java 9
>>>>>> Setting JAVA_HOME to JDK11
>>>>>> mvn clean compile 
>>>>>> Reactor Summary for datasketches-memory-root 2.0.0-SNAPSHOT:
>>>>>> [INFO] datasketches-memory-root ........................... SUCCESS [  
>>>>>> 0.912 s]
>>>>>> [INFO] datasketches-memory-java8 .......................... SUCCESS [  
>>>>>> 1.322 s]
>>>>>> [INFO] datasketches-memory-java8-tests .................... SUCCESS [  
>>>>>> 0.087 s]
>>>>>> [INFO] datasketches-memory-java9 .......................... SUCCESS [  
>>>>>> 0.602 s]
>>>>>> [INFO] datasketches-memory-java9-tests .................... SUCCESS [  
>>>>>> 0.191 s]
>>>>>> [INFO] datasketches-memory-java11 ......................... SUCCESS [  
>>>>>> 0.701 s]
>>>>>> [INFO] datasketches-memory ................................ SUCCESS [  
>>>>>> 0.182 s]
>>>>>> [INFO] datasketches-memory-tests .......................... FAILURE [  
>>>>>> 1.201 s]
>>>>>> [ERROR] Failed to execute goal 
>>>>>> org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce 
>>>>>> (enforce-banned-dependencies) on project datasketches-memory-tests: 
>>>>>> Execution enforce-banned-dependencies of goal 
>>>>>> org.apache.maven.plugins:maven-enforcer-plugin:3.0.0-M3:enforce failed: 
>>>>>> org.apache.maven.shared.dependency.graph.DependencyGraphBuilderException:
>>>>>>  
>>>>>> Could not resolve following dependencies: 
>>>>>> [org.apache.datasketches:datasketches-memory-java8-tests:jar:tests:2.0.0-SNAPSHOT
>>>>>>  (test)]: 
>>>>>> Could not resolve dependencies for project 
>>>>>> org.apache.datasketches:datasketches-memory-tests:jar:2.0.0-SNAPSHOT: 
>>>>>> Could not find artifact 
>>>>>> org.apache.datasketches:datasketches-memory-java8-tests:jar:tests:2.0.0-SNAPSHOT
>>>>>>  in apache.snapshots 
>>>>>> (https://repository.apache.org/content/groups/snapshots/org/apache/datasketches/
>>>>>>  
>>>>>> <https://www.google.com/url?q=https://www.google.com/url?q%3Dhttps://www.google.com/url?q%253Dhttps://www.google.com/url?q%25253Dhttps://www.google.com/url?q%2525253Dhttps://www.google.com/url?q%252525253Dhttps://repository.apache.org/content/groups/snapshots/org/apache/datasketches/%2525252526source%252525253Dgmail-imap%2525252526ust%252525253D1626465263000000%2525252526usg%252525253DAOvVaw0zU9ASggdO53YTS6qMd0Bs%25252526source%2525253Dgmail-imap%25252526ust%2525253D1626472557000000%25252526usg%2525253DAOvVaw2YXDOOchjoKno5SYKbsC0l%252526source%25253Dgmail-imap%252526ust%25253D1626473317000000%252526usg%25253DAOvVaw0pqXemU9jqjhcLDEZ_VyZC%2526source%253Dgmail-imap%2526ust%253D1626721420000000%2526usg%253DAOvVaw300347HftUcKUf-wTEjBy-%26source%3Dgmail-imap%26ust%3D1626978674000000%26usg%3DAOvVaw3VZIN0iceODaebUbQYCnfq&source=gmail-imap&ust=1627075026000000&usg=AOvVaw3Xo9OB4F_F1lR0rFUEUC_C>)
>>>>>> 
>>>>>> I'm not sure how to resolve this. I'm wondering if I am missing a 
>>>>>> toolchain in my environment.
>>>>>> 
>>>>>> Lee.
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
>> <ImportIntoEclipse.md>
> 

Reply via email to