Reputation: 189
I have researched this error quite a bit already, but could not find a solution yet.
Due to compatibility reasons with some software we are developing, we need to use Eclipse IDE version 2020-06. Unfortunately, this version seems to use an old equinox framework version, which does not support the algorithm most plugins use for signing nowadays.
Error:
An error occurred while collecting items to be installed
session context was:(profile=epp.package.rcp, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
Problems downloading artifact: osgi.bundle,org.sonarlint.eclipse.cdt,7.8.0.63129.
Error reading signed content:C:\Users\me~1\AppData\Local\Temp\signatureFile3792878232785362905.jar
An error occurred while processing the signatures for the file: C:\Users\me~1\AppData\Local\Temp\signatureFile3792878232785362905.jar
Error from log:
!SUBENTRY 1 org.eclipse.equinox.p2.artifact.repository 4 0 2023-03-24 11:50:21.996
!MESSAGE Problems downloading artifact: org.eclipse.update.feature,org.sonarlint.eclipse.feature,7.8.0.63129.
!SUBENTRY 2 org.eclipse.equinox.p2.artifact.repository 4 2 2023-03-24 11:50:21.996
!MESSAGE Error reading signed content:C:\Users\me~1\AppData\Local\Temp\signatureFile4976703525857637395.jar
!STACK 0
java.security.NoSuchAlgorithmException: An error occurred while processing the signatures for the file: C:\Users\me~1\AppData\Local\Temp\signatureFile4976703525857637395.jar
at org.eclipse.osgi.internal.signedcontent.SignedBundleHook.getSignedContent(SignedBundleHook.java:231)
at org.eclipse.equinox.internal.p2.artifact.repository.SignatureVerifier.verifyContent(SignatureVerifier.java:84)
at org.eclipse.equinox.internal.p2.artifact.repository.SignatureVerifier.verify(SignatureVerifier.java:66)
at org.eclipse.equinox.internal.p2.artifact.repository.SignatureVerifier.close(SignatureVerifier.java:115)
at org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ProcessingStep.close(ProcessingStep.java:92)
at org.eclipse.equinox.internal.p2.artifact.processors.checksum.MessageDigestProcessingStep.close(MessageDigestProcessingStep.java:58)
at org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ProcessingStep.close(ProcessingStep.java:92)
at org.eclipse.equinox.internal.p2.artifact.processors.checksum.MessageDigestProcessingStep.close(MessageDigestProcessingStep.java:58)
at org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ProcessingStep.close(ProcessingStep.java:92)
at org.eclipse.equinox.internal.provisional.p2.artifact.repository.processing.ZipVerifierStep.close(ZipVerifierStep.java:48)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.reportStatus(SimpleArtifactRepository.java:1250)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.downloadArtifact(SimpleArtifactRepository.java:645)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getArtifact(SimpleArtifactRepository.java:776)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.getArtifact(MirrorRequest.java:319)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.transferSingle(MirrorRequest.java:289)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.transfer(MirrorRequest.java:225)
at org.eclipse.equinox.internal.p2.artifact.repository.MirrorRequest.perform(MirrorRequest.java:155)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.SimpleArtifactRepository.getArtifact(SimpleArtifactRepository.java:759)
at org.eclipse.equinox.internal.p2.artifact.repository.simple.DownloadJob.run(DownloadJob.java:64)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Caused by: java.security.NoSuchAlgorithmException: No algorithm found for 1.2.840.113549.1.1.11
at org.eclipse.osgi.internal.signedcontent.PKCS7Processor.findEncryption(PKCS7Processor.java:95)
at org.eclipse.osgi.internal.signedcontent.PKCS7Processor.processSignerInfos(PKCS7Processor.java:364)
at org.eclipse.osgi.internal.signedcontent.PKCS7Processor.<init>(PKCS7Processor.java:172)
at org.eclipse.osgi.internal.signedcontent.SignatureBlockProcessor.processSigner(SignatureBlockProcessor.java:109)
at org.eclipse.osgi.internal.signedcontent.SignatureBlockProcessor.process(SignatureBlockProcessor.java:76)
at org.eclipse.osgi.internal.signedcontent.SignedBundleFile.initializeSignedContent(SignedBundleFile.java:47)
at org.eclipse.osgi.internal.signedcontent.SignedBundleHook.getSignedContent(SignedBundleHook.java:223)
... 19 more
I have already found the following links on the internet where this error is discussed, however the solution seems to be to upgrade to a newer version of eclipse, which is not possible for us.
Link 1: https://github.com/spotbugs/spotbugs/issues/1754 Link 2: https://bugs.eclipse.org/bugs/show_bug.cgi?id=572034
Does anyone have an idea how to fix this issue in older versions of eclipse, e.g. my version of 2020-06?
Upvotes: 1
Views: 1497
Reputation: 370
The Eclipse version I use in the company is also 2020.06.
In order to solve the devstyle installation problem, I searched frantically for answers online, and finally I found the keyword tool p2 here.
After 8 hours of working, I finally have the solution.
I installed devstyle through a script.
Before running the script, the commons-httpclient-3.1.0.jar
must be downloaded and placed in the ./eclipse/dropins/
folder so that devstyle will need it during the installation process.
Then run the script in the eclipse root folder
where has ecplisec.exe.
The following is the script.bat
:
eclipsec.exe -application org.eclipse.equinox.p2.director -repository https://downloads.genuitec.com/downloads/products/devstyle/updates/ds20200720 -repository https://downloads.genuitec.com/downloads/products/codetogether/updates/ct20200716 -installIUs com.genuitec.eclipse.theming.feature.feature.group,com.genuitec.eclipse.codetogether.feature.feature.group
echo Press any key to exit
pause >nul
Here's the explanation:
Upvotes: -2