如何从 Lotus 脚本文件 (lss) 文件自动构建注释 NTF 文件?
自动化 Lotus Notes 构建过程的正确方法是什么?我正在与一些使用 Domino Designer 从 .lss 文件构建 .ntf 的人合作。我想自动化这个过程,并让我的 hudson 持续集成服务器来构建它,而不破坏开发人员的用户体验。
是否有一种标准方法可以编写从 .lss 文件生成 .ntf 文件的脚本?
What's the right way to automate a Lotus Notes build process? I'm working with some folks who are using Domino Designer to build an .ntf from .lss files. I'd like to automate this process and get my hudson continuous integration server to build it without ruining the user experience for the developers.
Is there a standard way to script the production of .ntf files from .lss files?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Notes 中没有构建过程的真正概念。所有工件都在 nsf 文件中,要更改它们,您需要使用 Domino Designer 并修改/创建它们。您永远不会在 nsf 之外有一堆需要构建的源文件。您可能正在导入资源,但这需要与只能由 Domino Designer 在 nsf 本身中创建的工件进行编排。
您能更好地描述您想要解决的问题吗?您了解 Notes 开发人员的工作方式吗?
可以以类似于构建过程的方式将工件注入 nsf,但您必须对 Notes/Domino 有相当深入的了解才能做到这一点。有些 Notes 工具商店拥有这些知识,并且他们可能有一个可以解决您的问题的工具。但他们会向你收取费用。尝试查看 ytria 或 teamstudio
更新
创建一个实际上可以用作可用应用程序的 NSF 文件需要的不仅仅是简单的 .lss 或 .java 文件。 NSF 由许多其他必须考虑的多米诺骨牌特定工件组成。因此,首先,您的源代码控制系统必须了解所有这些工件。如果您只有 .lss 文件,那么您将需要获取所有其他工件。
DXL(在另一篇文章中提到)将为您提供大量工件,但我上次查看时它还远未完成。在大多数地方,它允许您导出工件的二进制版本,然后可以将其重新导入。您将需要测试这些的往返能力。当然,非二进制版本无法在所有情况下完全保真地往返。
如果 DXL 的保真度不足以满足您的需求,那么您将不得不使用 Notes C API 来处理内部设计注释。这将为您提供所需的所有访问权限,并且是前面提到的公司用于其开发人员工具的内容。
您还需要考虑安全性的影响。某些工件可能需要使用与其他工件不同的凭据进行签名,具体取决于您组织中实施的安全策略。
虽然我不知道 IBM 如何管理维护 Domino 附带的 nsf 文件的过程,但我强烈怀疑 nsf 文件本身仍然是控制的中心点,并且它们永远不会由单独的工件集合构建。他们可能会使用上述公司的工具来帮助管理开发过程,但这不会涉及您想象的传统构建过程。
There is no real concept of a build process in Notes. All the artifacts are in the nsf file and to change them you need to go in with Domino Designer and modify / create them. You never have a bunch of source files outside of the nsf that then need to be built. You might be importing resources, but that would need to be orchestrated with the artifacts that can only be created by Domino Designer in the nsf itself.
Can you describe the problem you are trying to solve better? Do you understand how your Notes devs work?
It would be possible to inject artifacts into an nsf in such a way that it resembled a build process, but you'd have to have pretty deep knowledge of Notes / Domino to do it. There are Notes tools shops that have that knowledge and they may have a tool that solves your problem. But they will charge you for it. Try looking at ytria or teamstudio
Update
Creating an NSF file that will actually function as a usable app requires more than simple .lss or .java files. The NSF is made up of many other domino specific artifacts that would have to be considered. So first things first, your source control system is going to have to know about all of these artifacts. If you only have .lss files then you will need to get all the other artifacts.
DXL (mentioned in another post) will give you lots of the artifacts, but the last time I looked it was far from complete. In most places it will allow you to export binary versions of artifacts, that can then be imported back in. You'll want to test the round trip ability of these. Certainly the non-binary versions suffer from an inability to round trip with full fidelity in all circumstances.
If the fidelity of DXL isn't good enough for what you want then you would be left with dealing with the internal design notes using the Notes C API. This will give you all the access you could want and is what the previosly mentioned companies use for the their developer tools.
You would also need to consider the implications of security. Some artifacts may need to be signed with different credentials to others, depending on the security policies in place at your organisation.
While I don't know how IBM manage the process of maintaining the nsf files that come with Domino I strongly suspect that the nsf file itself remains the central point of control and that they are never built from a seperate collection of indivitual artifacts. They may be using tools like those from the companies above to help manage the development process, but that would not involve a traditional build process as you envision it.
根据您的详细信息,可以选择自动创建包含设计元素结构的 DXL 文件(Domino 特定的 XML 模式)的过程。然后,您可以导入 DXL 以创建新的 NSF(或 NTF)。
这些可能会有所帮助:
架构的讨论:
http://www .ibm.com/developerworks/lotus/library/domino-dxl/index.html
包含一些示例导入代码的文章:
http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/the-missing -dxl-import-menu-option?opendocument&comments
http://searchdomino.techtarget.com/tip/0,289483,sid4_gci1006378,00.html
Depending on your details, an option may be to automate the process of creating a DXL file (Domino-specific XML schema) which can contain design element structures. You can then import the DXL to create a new NSF (or NTF).
These may help:
Discussion of the schema:
http://www.ibm.com/developerworks/lotus/library/domino-dxl/index.html
Articles with some sample import code:
http://www-10.lotus.com/ldd/bpmpblog.nsf/dx/the-missing-dxl-import-menu-option?opendocument&comments
http://searchdomino.techtarget.com/tip/0,289483,sid4_gci1006378,00.html