我遇到了 NHibernate.Search 的问题,它突然停止工作,它根本无法创建文件或读取索引文件。
NHibernate 似乎可以正确加载它:
2009-01-20 17:37:17,751 [1] 调试 NHibernate.Impl.SessionFactoryImpl - 使用属性实例化会话工厂:{use_reflection_optimizer=True, hibernate.search.analyzer=Lucene.Net.Analysis.SimpleAnalyzer, Lucene.Net, hibernate.search.default.directory_provider=NHibernate.Search.Store.FSDirectoryProvider, NHibernate.Search, dialect=NHibernate.Dialect.PostgreSQL82Dialect, connection.driver_class=NHibernate.Driver.NpgsqlDriver, hibernate.search.default.indexBase.create=true, hibernate.search.default.indexBase=c:\temp\Lucene, connection.provider=NHibernate.Connection.DriverConnectionProvider, connection.connection_string_name=开发者}
但在那之后,似乎没有任何效果。没有文件被创建,并且 c:\temp\Lucene 也从未被创建。我已经检查了权限,我似乎找不到任何问题。
这对我来说已成为死胡同,并且不知道如何进行调试。非常感谢任何反馈。
好的,更新:
我发现 FullTextIndexEventListener.Initialize(NHibernate.Cfg.Configuration cfg) 永远不会被调用。
我假设当将监听器添加到 NHibernate 配置时会触发它(因为它实现了 NHibernate.Event.IInitializable),但是在检查 NHibernate 的源时,这似乎不是这种情况?
奇怪的是,它可以在我的同事开发机器上运行,而无需手动调用。我们运行相同的源代码以及相同的库。