[p2] Cannot mirror LiClipseText repo hosted on GitHub releases

We use Maven/Tycho to build an Eclipse RCP application and Nexus to proxy p2 and maven repos. I have been trying to integrate LiClipseText using it’s update site https://github.com/fabioz/LiClipseText/releases/download/liclipsetext_2_4_0/ (Note: the update site has no index so returns a 404 when browsed but it does have all the files that you would expect: artifacts.jar etc… which can be seen Release liclipsetext_2_4_0 · fabioz/LiClipseText · GitHub)

eclipse.target:

        <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
            <unit id="org.brainwy.liclipsetext.feature.feature.group" version="2.4.0.202203051317"/>
            <repository id="p2-liclipsetext" location="https://github.com/fabioz/LiClipseText/releases/download/liclipsetext_2_4_0"/>
        </location>

When I use it directly (without Nexus) everything works as expected but when I try to proxy it via Nexus it fails trying to find the artifacts.

Using maven settings.xml:

    <mirror>
      <id>p2-liclipsetext</id>
      <mirrorOf>p2-liclipsetext</mirrorOf>
      <url>http://localhost:8081/repository/p2-liclipsetext/</url>
      <layout>p2</layout>
      <mirrorOfLayouts>p2</mirrorOfLayouts>
    </mirror>

and default Nexus p2-proxy repository settings:

Type: p2 (proxy)
Name: p2-liclipsetext
Remote storage: https://github.com/fabioz/LiClipseText/releases/download/liclipsetext_2_4_0

Gives error when building:


10:45:00 [ERROR] An error occurred while transferring artifact canonical: osgi.bundle,org.brainwy.liclipsetext.editor,2.4.0.202203051317 from repository http://localhost:8081/repoitory/p2-liclipsetext/:
10:45:00 [ERROR]    Artifact not found: http://localhost:8081/repository/p2-liclipsetext/org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar.
10:45:00 [ERROR] Internal error: org.eclipse.tycho.repository.local.MirroringArtifactProvider$MirroringFailedException: Could not mirror artifact osgi.bundle,org.brainwy.liclipsetxt.editor,2.4.0.202203051317 into the local Maven repository.See log output for details. http://localhost:8081/repository/p2-liclipsetext/org.brainwy.liclipsetext.editor_2.4.0.20203051317.jar -> [Help 1]
org.apache.maven.InternalErrorException: Internal error: org.eclipse.tycho.repository.local.MirroringArtifactProvider$MirroringFailedException: Could not mirror artifact osgi.bunde,org.brainwy.liclipsetext.editor,2.4.0.202203051317 into the local Maven repository.See log output for details.
Caused by: org.eclipse.tycho.repository.local.MirroringArtifactProvider$MirroringFailedException: Could not mirror artifact osgi.bundle,org.brainwy.liclipsetext.editor,2.4.0.20220051317 into the local Maven repository.See log output for details.
...
Caused by: java.io.FileNotFoundException: http://localhost:8081/repository/p2-liclipsetext/org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar
...

I setup a local copy of Nexus and a HTTP server to host the update site content in case it was a problem with the update site not providing an index.html or p2.index but it doesn’t seem to be that. I can see Nexus has fetched the context.jar and artifacts.jar but did not attempt to fetch anything else.

Here is the end of the Nexus log when trying to fetch org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar.


2022-03-28 12:40:13,988+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Servicing: GET /repository/p2-liclipsetext/org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar (http://localhost:8081/repository/p2-liclipsetext/org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar)
2022-03-28 12:40:13,989+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Parsed path: RepositoryPath{repositoryName='p2-liclipsetext', remainingPath='/org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar'}
2022-03-28 12:40:13,989+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Looking for repository: p2-liclipsetext
2022-03-28 12:40:13,990+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Repository: RepositoryImpl$$EnhancerByGuice$$652258088{type=proxy, format=p2, name='p2-liclipsetext'}
2022-03-28 12:40:13,990+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Dispatching to view facet: org.sonatype.nexus.repository.view.ConfigurableViewFacet$$EnhancerByGuice$$641980082@57daf7cd
2022-03-28 12:40:13,990+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.HttpResponseSenderSelector - Looking for HTTP response sender: p2
2022-03-28 12:40:13,990+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.Router - Request: Request{action='GET', path='/org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar', parameters=null, payload=HttpRequestPayloadAdapter{contentType='null', size=-1}, multipart=false}
2022-03-28 12:40:13,991+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.handlers.BrowseUnsupportedHandler$MatcherImpl - Matching: GET /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar
2022-03-28 12:40:13,993+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@3e335f92 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@7b31d630 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@16b09190
2022-03-28 12:40:13,993+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/p2.index\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,994+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@4a00ebc9 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@6e6bf2d4 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@1b1e297f
2022-03-28 12:40:13,994+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/compositeContent.jar\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,994+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@930179d AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@44a3fbd1 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@756f5cc3
2022-03-28 12:40:13,994+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/compositeContent.xml\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,995+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@1f50d6c0 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@16d5a648 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@4df3aa30
2022-03-28 12:40:13,995+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/content.jar\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,995+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@42756e09 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@5b0a5651 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@60564c9e
2022-03-28 12:40:13,995+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/content.xml.xz\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,996+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@3024c88e AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@59c8fda5 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@50f99013
2022-03-28 12:40:13,996+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/content.xml\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,996+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@219042e AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@14efdc5b AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@ad43eb6
2022-03-28 12:40:13,996+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/compositeArtifacts.jar\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,996+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@16b15ef7 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@5c43007b AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@36a402ac
2022-03-28 12:40:13,997+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/compositeArtifacts.xml\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,997+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@1daebb40 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@1f408e4 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@45f08079
2022-03-28 12:40:13,997+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/artifacts.jar\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,997+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@53d74b09 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@3b4b8e88 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@1ad9022d
2022-03-28 12:40:13,997+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/artifacts.xml.xz\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,997+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@5b6baa47 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@320d3d20 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@55d5ca27
2022-03-28 12:40:13,998+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/artifacts.xml\E, variables=[var(site,[0-9a-f]{64})]}
2022-03-28 12:40:13,998+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@74f72da AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@1f0c9e6 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@5a4f10c5
2022-03-28 12:40:13,998+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/\E(?<dir>features|plugins)\Q/\E(?<name>.*)\Q_\E(?<version>\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?)\Q.\E(?<extension>.*), variables=[var(site,[0-9a-f]{64}), var(dir,features|plugins), var(name,.*), var(version,\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?), var(extension,.*)]}
2022-03-28 12:40:13,998+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@21b06d59 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@5d951217 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@5aad4fba
2022-03-28 12:40:13,998+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<site>[0-9a-f]{64})\Q/\E(?<dir>binary)\Q/\E(?<name>.*)\Q_\E(?<version>\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?), variables=[var(site,[0-9a-f]{64}), var(dir,binary), var(name,.*), var(version,\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?)]}
2022-03-28 12:40:13,998+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@7846b512 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@5a3ec5e6 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@2f4e711c
2022-03-28 12:40:13,999+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/p2.index\E, variables=[]}
2022-03-28 12:40:13,999+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@49c24a93 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@5ad3deb9 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@3a6b6efa
2022-03-28 12:40:13,999+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/compositeContent.jar\E, variables=[]}
2022-03-28 12:40:13,999+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@33eca86b AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@6821fa57 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@2c43d7fc
2022-03-28 12:40:13,999+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/compositeContent.xml\E, variables=[]}
2022-03-28 12:40:13,999+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@4d3e6030 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@1b47260c AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@7c539471
2022-03-28 12:40:14,000+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/content.jar\E, variables=[]}
2022-03-28 12:40:14,000+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@634f17cc AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@25698e02 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@21b0c972
2022-03-28 12:40:14,000+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/content.xml.xz\E, variables=[]}
2022-03-28 12:40:14,000+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@5dcec787 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@46a45a85 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@2f54d5cd
2022-03-28 12:40:14,000+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/content.xml\E, variables=[]}
2022-03-28 12:40:14,000+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@888620c AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@23d17e65 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@47c578e8
2022-03-28 12:40:14,000+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/compositeArtifacts.jar\E, variables=[]}
2022-03-28 12:40:14,001+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@4e363760 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@565a4a8 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@2defc037
2022-03-28 12:40:14,001+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/compositeArtifacts.xml\E, variables=[]}
2022-03-28 12:40:14,001+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@4181ff5a AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@3ef34d3d AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@161bfeaf
2022-03-28 12:40:14,001+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/artifacts.jar\E, variables=[]}
2022-03-28 12:40:14,001+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@5215d40 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@2845734 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@3de7845c
2022-03-28 12:40:14,002+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/artifacts.xml.xz\E, variables=[]}
2022-03-28 12:40:14,002+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@42df0222 AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@4d1b9c64 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@6d865f04
2022-03-28 12:40:14,002+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/artifacts.xml\E, variables=[]}
2022-03-28 12:40:14,002+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@6c42e38c AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@56362234 AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@475f6c2a
2022-03-28 12:40:14,002+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<dir>features|plugins)\Q/\E(?<name>.*)\Q_\E(?<version>\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?)\Q.\E(?<extension>.*), variables=[var(dir,features|plugins), var(name,.*), var(version,\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?), var(extension,.*)]}
2022-03-28 12:40:14,002+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.logic.AndMatcher - Matching: org.sonatype.nexus.repository.view.matchers.ActionMatcher@18fe75ba AND org.sonatype.nexus.repository.view.matchers.token.TokenMatcher@635babaa AND com.sonatype.nexus.repository.p2.orient.internal.proxy.OrientP2ProxyRecipe$1@49b1277
2022-03-28 12:40:14,003+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.matchers.token.TokenMatcher - Matching: /org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar~=TokenParser{pattern=\Q/\E(?<dir>binary)\Q/\E(?<name>.*)\Q_\E(?<version>\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?), variables=[var(dir,binary), var(name,.*), var(version,\d+\.\d+\.\d+(\.[A-Za-z0-9_-]+)?)]}
2022-03-28 12:40:14,003+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.Context - Starting: DefaultRoute{matcher=org.sonatype.nexus.repository.view.matchers.AlwaysMatcher@3d0565ea, handlers=[org.sonatype.nexus.repository.http.HttpHandlers$1@389910f2]}
2022-03-28 12:40:14,003+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.Context - Proceeding: org.sonatype.nexus.repository.http.HttpHandlers$1@389910f2
2022-03-28 12:40:14,003+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.view.Router - Response: Response{status=Status{successful=false, code=404, message='null'}, payload=null}
2022-03-28 12:40:14,003+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Request: Request{action='GET', path='/org.brainwy.liclipsetext.editor_2.4.0.202203051317.jar', parameters=null, payload=HttpRequestPayloadAdapter{contentType='null', size=-1}, multipart=false}
2022-03-28 12:40:14,003+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.DefaultHttpResponseSender - Sending response: Response{status=Status{successful=false, code=404, message='null'}, payload=null}
2022-03-28 12:40:14,004+0800 DEBUG [qtp1597135991-695]  *UNKNOWN org.sonatype.nexus.repository.httpbridge.internal.ViewServlet - Service completed

Any suggestions as to what could be wrong or what log settings I could turn on on Nexus to help investigate?

I believe the issue here is that this particular p2 repository is customizing the download paths which Nexus doesn’t currently handle. If you can file a ticket at https://issues.sonatype.org in the Nexus project

Thank you. Issue filed Log in - Sonatype JIRA

Do you know if there are any workarounds that would allow the repo to be proxied through Nexus? Either that we could do by editing and hosting a modified version of the repo or that we could suggest to the LiClipseText maintainer to apply and re-publish?