3

我正在尝试使用以下命令在Pharo 1.4 (Summer)的干净映像上安装Pieradmin

Gofer it
    renggli: 'pier2addons';
    package: 'ConfigurationOfPierAdmin';
    load.

ConfigurationOfPierAdmin loadBleedingEdge.

它进行了一段时间并出现了错误:

This package depends on the following classes:
    ImageSegment
You must resolve these dependencies before you will be able to load these definitions: 
    writeKernel:on:

您可以继续,它将完成安装所有依赖项。

我有两个问题:

  • 我在哪里可以获得 ImageSegment 类?
  • 或者,如果我不能,那么 writeKernel:on: 不存在有关系吗?
4

2 回答 2

3

是的,ImageSegment 已从 Pharo 1.4 中删除。并且 ReferenceStream 也从 Pharo 2.0 中删除。这个想法是依靠新的更好的工具,比如 Fuel 序列化程序(参见http://rmod.lille.inria.fr/web/pier/software/Fuel)。

Yanni 和我做了两件事:Pier 持久性和基于 Fuel 的内核导出/导入。您可以在以下位置找到代码:

Gofer it
    squeaksource3: 'pierfuel';
    package: 'Pier-FuelPersistence-Core';
    package: 'Pier-FuelPersistence-Test';
    load.

然后你可以这样做,例如:

 PRFuelExporterImporter new exportKernelNamed: 'pierDBX' toFilename: 'pierDBX.fuel' 

和:

 PRFuelExporterImporter new importNewKernelNamed: 'pierDBX' fromFilename: 'pierDBX.fuel'
于 2012-08-01T10:04:13.207 回答
3

弥敦道,

几乎可以肯定,对 ImageSegment 的依赖来自Pier-Pharo-Persistency定义在ConfigurationOfPier2>>baseline2060:其中的包,它作为CorePier 组的一部分包含在其中……乍一看,这似乎Pier-Pharo-Persistency是 Pier 非常需要的。

您可以摆弄 theConfigurationOfPier2>>baseline2060:Pier-Pharo-PersistencyCore组中删除,然后再次尝试加载,但您可能只是为自己制造了另一个更微妙的问题。在Pier 邮件列表上问这个问题可能是个好主意

OTOH,我很确定它Pier-Admin适用于 Pharo-1.3,所以这将是您的最佳选择。

戴尔

于 2012-08-01T12:52:31.053 回答