hallvard / plantuml

Embed UML diagrams in files and view them in Eclipse
http://plantuml.sourceforge.net/
209 stars 57 forks source link

cannot update to 1.1.19 #34

Closed anb0s closed 7 years ago

anb0s commented 7 years ago

eclipse.buildId=4.6.3.M20170301-0400 java.version=1.8.0_102 java.vendor=Oracle Corporation BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=de_DE Framework arguments: -product org.eclipse.epp.package.java.product -product org.eclipse.epp.package.java.product Command-line arguments: -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.java.product -data file:/D:/Programme/Eclipse/S7P/eclipse_workspace_4.6.1/ -product org.eclipse.epp.package.java.product

org.eclipse.equinox.p2.ui Error Mon Aug 14 12:56:17 CEST 2017 Artifact not found: http://files.idi.ntnu.no/publish/plantuml/repository/content.xml.xz.

org.eclipse.equinox.p2.core.ProvisionException: Artifact not found: http://files.idi.ntnu.no/publish/plantuml/repository/content.xml.xz. at org.eclipse.equinox.internal.p2.repository.CacheManager.updateCache(CacheManager.java:428) at org.eclipse.equinox.internal.p2.repository.CacheManager.createCacheFromFile(CacheManager.java:132) at org.eclipse.equinox.internal.p2.metadata.repository.XZedSimpleMetadataRepositoryFactory.getLocalFile(XZedSimpleMetadataRepositoryFactory.java:56) at org.eclipse.equinox.internal.p2.metadata.repository.XZedSimpleMetadataRepositoryFactory.load(XZedSimpleMetadataRepositoryFactory.java:78) at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.factoryLoad(MetadataRepositoryManager.java:57) at org.eclipse.equinox.internal.p2.repository.helpers.AbstractRepositoryManager.loadRepository(AbstractRepositoryManager.java:768) at sun.reflect.GeneratedMethodAccessor57.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.eclipse.oomph.util.ReflectUtil.invokeMethod(ReflectUtil.java:117) at org.eclipse.oomph.p2.internal.core.CachingRepositoryManager.loadRepository(CachingRepositoryManager.java:396) at org.eclipse.oomph.p2.internal.core.CachingRepositoryManager.loadRepository(CachingRepositoryManager.java:199) at org.eclipse.oomph.p2.internal.core.CachingRepositoryManager$Metadata.loadRepository(CachingRepositoryManager.java:463) at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:96) at org.eclipse.equinox.internal.p2.metadata.repository.MetadataRepositoryManager.loadRepository(MetadataRepositoryManager.java:92) at org.eclipse.equinox.p2.ui.ProvisioningUI.loadMetadataRepository(ProvisioningUI.java:440) at org.eclipse.equinox.internal.p2.ui.model.MetadataRepositoryElement.getMetadataRepository(MetadataRepositoryElement.java:126) at org.eclipse.equinox.internal.p2.ui.model.MetadataRepositoryElement.getRepository(MetadataRepositoryElement.java:115) at org.eclipse.equinox.internal.p2.ui.model.MetadataRepositoryElement.getQueryable(MetadataRepositoryElement.java:109) at org.eclipse.equinox.internal.p2.ui.QueryProvider.getQueryDescriptor(QueryProvider.java:88) at org.eclipse.equinox.internal.p2.ui.model.QueriedElement.fetchChildren(QueriedElement.java:101) at org.eclipse.equinox.internal.p2.ui.model.MetadataRepositoryElement.fetchChildren(MetadataRepositoryElement.java:77) at org.eclipse.equinox.internal.p2.ui.model.RemoteQueriedElement.fetchDeferredChildren(RemoteQueriedElement.java:34) at org.eclipse.ui.progress.DeferredTreeContentManager$1.run(DeferredTreeContentManager.java:231) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55) Caused by: java.io.FileNotFoundException: http://files.idi.ntnu.no/publish/plantuml/repository/content.xml.xz at org.eclipse.equinox.internal.p2.transport.ecf.RepositoryStatusHelper.checkFileNotFound(RepositoryStatusHelper.java:297) at org.eclipse.equinox.internal.p2.transport.ecf.FileReader.checkException(FileReader.java:480) at org.eclipse.equinox.internal.p2.transport.ecf.FileReader.sendRetrieveRequest(FileReader.java:437) at org.eclipse.equinox.internal.p2.transport.ecf.FileReader.readInto(FileReader.java:360) at org.eclipse.equinox.internal.p2.transport.ecf.RepositoryTransport.download(RepositoryTransport.java:101) at org.eclipse.equinox.internal.p2.transport.ecf.RepositoryTransport.download(RepositoryTransport.java:156) at org.eclipse.equinox.internal.p2.repository.CacheManager.updateCache(CacheManager.java:402) ... 24 more

hallvard commented 7 years ago

I encountered this issue myself, the problem is that p2 caches information about the update site. The site has changed from simple to a composite site, but p2 still expects it to be simple and hence looks for a file that doesn't exist. Could you try to remove and re-add the update site, or try to reload the contents in the dialog for managing update sites?

anb0s commented 7 years ago

OK i see, again p2 issue :( I've had similar issues with other plugins in luna... now same happens in neon too... i will search for p2 issues in eclipse...

  1. reloaded the update site -> same problem
  2. removed and added the site again -> same problem
  3. removed the site, restarted eclipse and added the site -> the problem is gone, but now it shows me the old 1.1.18 version: image

I will continue to play around...

anb0s commented 7 years ago

removed the site restarted eclipse and added the site agin multiple times, no way to see the new version...

now i've used the two sites and it worked: http://files.idi.ntnu.no/publish/plantuml/plantuml.lib/1.2017.15/repository/ http://files.idi.ntnu.no/publish/plantuml/plantuml.eclipse/1.1.19/repository/

Thanks for the tip, i will search for known p2 bugs or file new one, it's annoying...

anb0s commented 7 years ago

just for info, we are not alone, i've already tried to find the root of the problem here: https://github.com/mikhail-barg/moreclipboard/issues/6

anb0s commented 7 years ago

about the composite sites: i've used them in EasyShell / eclox etc. and saw issues if the two settings are not there:

<properties size='2'>
  <property name='p2.atomic.composite.loading' value='true'/>
  <property name='p2.timestamp' value='1464101261356'/>
</properties>

The first setting found here: https://stackoverflow.com/questions/20951842/combine-aggregate-eclipse-p2-repositories-extendable-p2-repository

The timestamp should change for every new release, i'm doing the adding of new version (updates the timestamp too) with script from: http://www.lorenzobettini.it/2015/01/creating-p2-composite-repositories-during-the-build/

My version for EasyShell as example: https://github.com/anb0s/EasyShell/blob/master/site/packaging-p2composite.ant

...just if the composite site shows problems for you too...

anb0s commented 7 years ago

I've found the p2 bug described here: https://bugs.eclipse.org/bugs/show_bug.cgi?id=470900#c39 the fix is done in Oxygen 4.7: https://bugs.eclipse.org/bugs/show_bug.cgi?id=509891

I've deleted the cached file: c:\Users\<USER_NAME>\.eclipse\org.eclipse.oomph.p2\cache\http___files.idi.ntnu.no_publish_plantuml_repository_p2.index and reloaded the site, now it looks good: image

anb0s commented 7 years ago

...close this one, because Eclipse platform / p2 issue...

Thanks for the plugin :+1:

hallvard commented 7 years ago

Thanks for the detailed info! If a lot of people have this problem, I maybe should change the official download site URL. Or at least make Arnaud add a tip about how to remove the cached file. I will take a look at the timestamp property (I know it exists, but not how it's used), to see if I need to add it for the next release.