问题标签 [packages]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
2715 浏览

java - 多个 Java 项目和重构

我最近加入了一个使用多个不同项目的项目。许多这些项目相互依赖,使用库中包含的另一个项目的 JAR 文件,因此无论何时更改一个项目,您都必须知道哪个其他项目使用它并更新它们。我想让这变得更容易,并且正在考虑将所有这些 java 代码合并到单独的包中的一个项目中。是否可以这样做,然后只在 jar 中部署一些包。我不想只部署其中的一部分,但如果可能的话,我已经被解雇了。

有没有更好的方法来处理这个?

0 投票
6 回答
2219 浏览

unix - 用于部署跨平台的打包?

在 Windows 上,应用程序通常打包为 MSI,在 Redhat Linux 上为 RPM,可用于将应用程序部署到所有平台(包括不同风格的 unix 和 windows)的最佳开源打包方法是什么?

内容将包括 exe、unix 二进制文件、java jar 文件、用户数据,甚至要运行的数据库脚本。

(我认识到每个目标操作系统的内容会有所不同,即二进制文件会有所不同,win exe 与 unix 二进制文件等,但例如配置文件可能相同,或者在 java 的情况下甚至字节码 jars)

我希望打包支持的关键特性是不同目录的不同用户和权限,但是我认识到支持这个特性多平台可能非常困难。

0 投票
3 回答
57791 浏览

java - 如何在 Java 中记录包?

在 Java API 中,我可以看到包的 Javadoc 注释。

如何/在哪里放置 Javadoc 注释来记录包?

0 投票
6 回答
182639 浏览

java - java中的包帮助 - 导入不起作用

我是 C++ 开发人员 - 不是 Java 开发人员,但必须让这段代码工作......

我有 2 个公共课程将被另一个产品使用。我在每个 java 文件中都使用了 package 指令。

当我尝试编译使用我添加的测试应用程序时

javac 编译器失败,出现关于 com.company 的错误不存在。(即使我将它编译在与我刚刚打包的类文件相同的目录中)

我确信我正在做一些愚蠢而愚蠢的事情。

我已经阅读了http://java.sun.com/docs/books/tutorial/java/package/usepkgs.html页面并尝试设置一个目录结构,如 /com/company/thing 等,但要么我有完全搞砸了,或者我错过了其他东西。

编辑感谢您的建议-我以前尝试过类路径。它没有帮助。

我尝试编译

结果是:

我在 \com\company\product 中有要导入的代码(两个 java 文件)。我编译的很好。(它们包含 MyClass)我什至为它们制作了一个 jar 文件。我将 jar 文件复制到父目录。

然后我做了(在带有客户端java文件的父目录中)

结果是:

编辑

如果我使用 MyClass 的完全限定名称并在父目录中编译它,我可以编译和运行客户端代码。我现在完全糊涂了。

编译时没有设置类路径 - 只是

在父目录中 - 它工作正常。

我可以编译一个测试应用程序,但是当我必须将它集成到生产代码中时,这不会削减它。还在寻求帮助。

编辑:

最后 - 不知道为什么它以前不起作用 - 但我清理了整个目录结构中的所有文件,现在它可以工作了。

谢谢

0 投票
3 回答
1547 浏览

database - 您可以从 Cognos 8.3 中导出包装信息(ERD 或其他数据模型)吗?

我想知道是否有办法从普通用户级别或框架级别从 Cognos 8 导出包信息。

例如,我想要 cognos 在数据库上指向的字段名称,我想要数据类型,当您右键单击数据元素时 cognos 使用的描述等。

有什么建议么?

0 投票
2 回答
8768 浏览

delphi - Delphi 包构建/安装调试

我正在使用 Delphi 2007 Pro。我有一个运行时包,其中包含我正在开发的许多基于 TFrame 的复合组件。还有一个相关的设计包将这些组件安装到工具面板中。由于各种原因,这些 TFrame 后代使用了许多第三方组件,并且还相互继承,作为类层次结构。到目前为止(并且在这里得到了一些很好的建议的帮助),这种方法对于我想要完成的工作非常有效。

然而,最近我遇到了一个问题,编译/构建运行时包。最初,它与以 nxEventLog.pas 为中心的一些冲突有关,遗憾的是我未能记录其细节,但基本上类似于“此方法的定义与之前的定义不符”。就像你的实现声明与你的类声明不一致时得到的一样。此文件是 NexusDB 文件(应用程序使用 NexusDB 嵌入式服务器)。

我尝试了各种方法,但从未成功让冲突消失。我最接近的是在编译时,让 IDE 请求将完全不相关的单元的 TRUCKLOAD 添加到 contains/uses 子句。稍后会详细介绍,但如果我继续这样做,它仍然无法正常工作。nxEventLog 文件未从其原始状态更改。

无法找出为什么会出现这个错误——它出现在 Nexus 文件中,而不是我的实际包或单元中,而且我在 Nexus 代码中没有更改任何内容——我终于继续并完全卸载了 Nexus,并手动搜索以确保我已删除所有相关的 dcu 和 bpl 文件,然后重新安装。(我正在运行 Nexus 2.07)

启动 IDE 后,出现以下错误:

bds.exe - 未找到入口点
---------------
程序入口点
@Nxsddatadictionary@TnxBaseTableDescriptor@LoadFromReader$qqrp15Classes@TReader 可以不在动态链接库 NexusDB207sd110.bpl 中。
----------------------------
好的

其次是:

Can't load package ....NexusDB207dv110.bpl
Can't load package ....cmTPPanels_D2007_DesignReg.bpl 找不到
指定的程序。
您想在下次加载包时尝试加载此包吗?

Once I uninstalled the cmTPPanels runtime/design packages (my component set), via Component -> Install Package -> Remove, my other "normal Nexus DB" applications seem to work fine, including those which include Nexus's nxEventLog ocmponent. This seems to indicate the problem is definitely in my install packages somewhere.

So, having confirmed that my Nexus installation does not seem to be the actual problem, I opened up the project group which contains both packages. Building (or compiling) the runtime package, the Delphi IDE gives me the same dialog box I mentioned above:

"The following changes are necessary to make this package compatible with other installed package. Choose OK to apply these changes and rebuild the package."

Add dsnap.
dsnap contains implicit unit(s) DBClient, Provider, DataBkr, MidConst, Midas, DSIntf.

Add ibxpress.
ibxpress contains implicit unit(s) IBUtils, IB, IBSQLMonitor, IBHeader, IBIntf, IBXConst, IBXMLHeader, IBSQL, IBBlob, IBCustomDataSet, IBDatabase, IBErrorCodes, IBDatabaseInfo,
IBExternals, IBInstallHeader, IBServices.

Add IndyCore.
IndyCore contains implicit unit(s) IdIOHandlerSocket, IdSocks, IdIOHandlerStack, IdBuffer, IdResourceStringsCore, IdIntercept, IdCustomTransparentProxy, IdExceptionCore, IdSocketHandle, IdIOHandler, IdTCPConnection, IdReplyRFC, IdReply, IdTCPClient, IdIPAddress, IdAssignedNumbers.

Add IndySystem.
IndySystem contains implicit unit(s) IdBaseComponent, IdGlobal, IdStreamVCL, IdSysNativeVCL, IdSysVCL, IdSysBase, IdSysWin32, IdResourceStrings, IdException, IdSys, IdStream, IdObjs, IdComponent, IdStack, IdStackWindows, IdWship6, IdWinSock2, IdStackConsts, IdStackBSDBase, IdAntiFreezeBase.

Add Rz30DBCtls90.
Rz30DBCtls90 contains implicit unit(s) RzDBNav, RzDBLbl, RzDBStat.

Add lmdweb30_d10.
lmdweb30_d10 contains implicit unit(s) LMDWebHTTPGet, LMDHTMLObjectUnit, LMDFSSupport, LMDHTTPSupp, LMDStringsSupport, LMDURLSupp, LMDRASSupport, LMDRASCF, LMDWebConst, LMDRAS, LMDSyncUnit, LMDWebBase, LMDWebLex, LMDWebHTMLLex, LMDWebDownloadFormUnit, LMDDownload, LMDInetConst, LMDWebConfig, LMDWebInfo.

Add lmddsg30_d10.
lmddsg30_d10 contains implicit unit(s) LMDDsgPropInsp, LMDDsgPropEditors, LMDDsgMenuEditor, LMDDsgObjects, LMDDsgClass, LMDDsgCst, LMDDsgCollectionEditor, LMDDsgStrsEditor, LMDDsgPropPage, LMDDsgModule.

Add lmdstorage10_d10.
lmdstorage10_d10 contains implicit unit(s) LMDStorFormProperties, LMDStorFormHook, LMDStorBase, LMDStorConsts, LMDStorPropertiesStorage, LMDStorCommon, LMDStorINIVault.

Add ExceptionExpert11.
ExceptionExpert11 contains implicit unit(s) ExceptionLog, EDisAsm, EHash, EListView, EConsts, ETypes, ELogManager, EEncrypt, EBase64, EXMLBuilder, ECore, EWebTools, EZip, EZlib, ESockets, ELang, EHook, EDebug, ELeaks.

Add RemObjects_Core_D11.
RemObjects_Core_D11 contains implicit unit(s) uROClasses, uROSerializer, uROXMLIntf, uROMSXMLImpl, uRORes, uROMSXML2_TLB, uROClient, uRODLToXML, uRODL, uROTypes, uROHTTPTools, uROClientIntf, uROEncryption, uROZlib, uROCipher1, uROHash, uRODECUtil, uRODECConst, uROCipher, uROCiphers, uROBinaryHelpers, uROCompression, uROEventRepository, uROServerIntf, uROSessions, uRODynamicRequest, uRORemoteService, uROThreadPool, uROServer, uROAsync, uROThread, uROBinMessage, uROStreamSerializer.

Add RemObjects_Indy_D11.
RemObjects_Indy_D11 contains implicit unit(s) uROSuperTCPChannel, uROSCHelpers.

Add DataAbstract_Core_D11.
DataAbstract_Core_D11 contains implicit unit(s) uDADataTable, uDASupportClasses, uDARes, uDABusinessProcessor, uDAEngine, uDASQL92QueryBuilder, uDASQL92Interfaces, uDAWhere, uDAInterfaces, DataAbstract4_Intf, DataAbstract3_Intf, uDAHelpers, uDAClasses, uDAMemDataTable, uDAMemDataset, uDAExpressionEvaluator, uDAMacros, uDAUtils, uDAXMLUtils, uDADriverManager, uDAInterfacesEx, uDADelta, uDARegExpr, uDAScriptingProvider, uDAOracleInterfaces, uDAMacroProcessors, uDADataStreamer, uDACDSDataTable, uDARemoteDataAdapter, uDAReconcileDialog, uDAReconcileDialogDetails, uDARemoteDataAdapterRequests, uDABinAdapter.

Add VirtualTreesD11.
VirtualTreesD11 contains implicit unit(s) VirtualTrees, VTAccessibilityFactory.

Add VirtualShellToolsD11.
VirtualShellToolsD11 contains implicit unit(s) VirtualExplorerTree, ColumnForm, VirtualResources, VirtualShellAutoComplete, VirtualShellNotifier, VirtualScrollbars.

Add dxBarDBNavD11.
dxBarDBNavD11 contains implicit unit(s) dxBarDBNav, dxBarDBNavStrs.

Add dxBarExtDBItemsD11.
dxBarExtDBItemsD11 contains implicit unit(s) dxBarExtDBItems.

Add cxVerticalGridD11.
cxVerticalGridD11 contains implicit unit(s) cxDBVGrid, cxVGridViewInfo, cxVGridUtils, cxVGrid, cxVGridNewCategory, cxVGridConsts.

Add dxNavBarD11.
dxNavBarD11 contains implicit unit(s) dxNavBar, dxNavBarExplorerViews, dxNavBarConsts, dxNavBarGraphics, dxNavBarStyles, dxNavBarBase, dxNavBarViewsFact, dxNavBarCollns, dxNavBarVSToolBoxViews, dxNavBarBaseViews, dxNavBarOffice11Views, dxNavBarOfficeViews, dxNavBarXPViews.

Add dxLayoutControlD11.
dxLayoutControlD11 contains implicit unit(s) dxLayoutControl, dxLayoutCustomizeForm, dxLayoutEditForm, dxLayoutCommon, dxLayoutLookAndFeels, dxLayoutControlAdapters.

Add dxMasterViewD11.
dxMasterViewD11 contains implicit unit(s) dxMasterViewColumns, dxMasterView, dxMasterViewStrs.

Add dxdbtrD11.
dxdbtrD11 contains implicit unit(s) dxdbtrel, dxlocate, dxtree, dxdbtree.

Add dxPSCoreD11.
dxPSCoreD11 contains implicit unit(s) dxPSEdgePatterns, dxPSUtl, dxPSImgs, dxPSRes, dxPrnDev, dxPSGlbl, dxPSEngn, dxPSSngltn, dxPSESys, dxBase, dxPSCore, dxPSPrVwStd, dxPSPopupMan, dxPgsDlg, dxWrap, dxPSHFToolBarBld, dxPSfmAutoHFTextFmt, dxPSEvnt, dxPrnPg, dxPpAttr, dxBkGnd, dxFEFDlg, dxPcPrVw,dxExtCtrls, dxExtCtrlsStrs, dxPSForm, dxPSAutoHFTextMnuBld, dxfmDfnStl, dxfmMnPg, dxfmClr, dxPreVw, dxPSPrVw, dxfmZoom, dxPSExtDlgs, dxfmPNFmt, dxfmDTFmt, dxPSPrVwOpt, dxPSfmCompositionDsg, dxPSfmCompositionAdd, dxPSCompsProvider, dxPSXplorerTreeView, dxPSfmReportProperties, dxPSPgsMnuBld, dxfmChFN, dxPSfmTtl, dxPSCPDsg, dxPSfmLnkAdd, dxPSfmEditDesc, dxPSFillPatterns, dxPrnDlg.

Add dxPScxCommonD11.
dxPScxCommonD11 contains implicit unit(s) dxPScxCommon.

Add dxPScxGridLnkD11.
dxPScxGridLnkD11 contains implicit unit(s) dxPScxGridLnk.

Add NexusDB207se110.
NexusDB207se110 contains implicit unit(s) nxseAutoComponent, nxseAllEngines, nxseRecordCompressionEngineSmart, nxseRecordEngineVariable, nxseFulltextEngineCursor, nxseFulltextEngineTable, nxseRefIntEngine, nxseJournalEngine, nxseSortEngineMerge, nxseTemporaryStorageChunked, nxseRecordEngineStatic, nxseIndicesEngineSimple, nxseIndexBase, nxseHeapEngineCached, nxseBlockHeapEngineNonfragmenting, nxseBlobEngineSimple, nxseIndexEngineStaticKeyBstarTree, nxseHeaderAccess, nxseEncryptionEngineBlowfishRC4, nxseBlobEngineSegmented, nxseAutoIncEngineSimple, nxseStreamEngineSimple.

Add NexusDB207sr110.
NexusDB207sr110 contains implicit unit(s) nxsrSqlEngineBase, nxExeConst, nxsrServerEngine, nxsrBlobHandlerCaching, nxsrTimeoutHandling, nxsrTypes, nxsrBlobHandlerBase, nxsrBufferManager, nxsrFileImplWin32, nxsrStrings, nxsrEncryptionEngineBase, nxsrConst, nxsrTemporaryStorageBase, nxsrBlobEngineBase, nxsrSubEngineBase, nxsrBlobHandlerPassthrough, nxsrRecordMapperEngine, nxsrFieldMapperEngineAutoInc, nxsrFieldMapperEngine, nxsrFieldMapper, nxsrSortEngineBase, nxsrFulltextEngineBase, nxsrIndexEngineBase, nxsrRecordEngineBase, nxsrRefIntEngineBase, nxsrAutoIncEngineBase, nxsrStreamEngineBase, nxsrTableLockContainer, nxsrDataDictionary, nxsrFileHandling, nxsrServerCursorMapping, nxsrSystemStorage, nxsrRecordCompressionEngineBase, nxsrHeapEngineBase, nxsrBlockHeapEngineBase.

Add NexusDB207sq110.
NexusDB207sq110 contains implicit unit(s) nxsqlEngine, nxsqlFunctions, nxsqlDataDef, nxsqlFunctionOrganizer, nxsqlCondExp, nxsqlTableExp, nxsqlViews, nxsqlProxies, nxSQLParse, nxsqlPSM, nxsqlTest, CocoaBaseW, nxsqlBase, nxsqlDataManip, nxSQLTok, nxSQLProxiesIntf.

Add NexusDB207lg110.
NexusDB207lg110 contains implicit unit(s) nxlgEventLogDispatcher, nxlgEventLog.

Add NexusDB207dv110.
NexusDB207dv110 contains implicit unit(s) nxServerManager, nxBaseServerComp, nxConfigSettings.

Add MPCommonLibD11.
MPCommonLibD11 contains implicit unit(s) MPDataObject, MPCommonObjects, MPCommonUtilities, MPResources, MPShellTypes, MPThreadManager, MPShellUtilities.

What's weird about this, aside from the fact that includes just about everything but the kitchen sink, is that a number of the packages mentioned aren't even relevant to the components included in this package I'm trying to install; DataSnap, Indy, IBExpress, RemObjects Data Abstract, etc -- none of these are even referenced in my components.

If I click "OK" to all these added units/packages, more chaos ensues, and it doesn't compile.

The NexusDB folders, and the folders which these components I'm developing reside in, are all on my Library path, with my custom components listed last.

I'm working on a virtual machine, and can snapshot as needed, but I can't seem to get around this problem regardless, and it's clear that I don't have enough in-depth understanding of how the compiler works to know where to look for diagnosis of the problem. Anything anyone can mention which might help me do so, would be much appreciated.

0 投票
1 回答
438 浏览

delphi - Delphi 的 RAD Studio\5.0\lib\debug 文件夹

也许是一个愚蠢的问题,但这个 Delphi 文件夹的目的到底是什么?:C:\Program Files\CodeGear\RAD Studio\5.0\lib\debug

..以及为什么/何时将 *.dcu 文件放在那里而不是 C:\Program Files\CodeGear\RAD Studio\5.0\lib\ ?

我正在尝试查找重复的 DCU 和 BPL 文件,基于我在此处收到的另一个问题的回答,似乎 lib 和 lib\debug 文件夹有时包含相同或相似的 *.DCU 文件。这可以吗,还是不行……以及何时/为什么?

提前感谢您的任何帮助。:)

0 投票
6 回答
2026 浏览

lisp - 使用 ASDF 启动 Hunchentoot

我正在使用 Hunchentoot(在 SBCL 和 Linux 上)开发一个 Web 应用程序,通常我只是从 Emacs(SLIME)运行它,但对于部署,我想要一些更容易自动化的东西。所以我试图弄清楚 ASDF,因为这似乎是现在每个人都在使用的东西。

myapp.asd:

包.lisp:

服务器.lisp:

如果我尝试手动加载它:

它加载并编译了一大堆函数,然后就停止了。Hunchentoot 没有运行,提示不接受输入。我不知道它认为它处于什么状态:打印的最后几行是:

有没有办法使这项工作?(坦白:我真的不太了解 ASDF 或 Common Lisp 包,尽管阅读了很多小时。)

0 投票
5 回答
22085 浏览

java - 如何组织包(并防止依赖循环)?

我一直在我的 Java 项目上运行一些指标,显然包之间存在很多依赖循环。我真的不知道如何将东西组织成包,所以我只是做了对我有意义的事情,这显然是错误的。

我的项目是一个神经网络框架。神经网络具有神经元,它们通过连接相互连接。他们需要相互依赖。但是,也有不同类型的神经元,所以我认为将它们都放在自己的“神经元”包中是个好主意。显然,连接不是神经元,所以它不应该在包中,但由于它们相互引用,我现在有一个循环依赖。

这只是一个例子,但我还有更多这样的情况。你如何处理这些情况?

另外,我读到包层次结构中较高的包中的类不应该引用更深的包中的类。这意味着包“nn”中的 NeuralNetwork 类不能引用包“nn.neurons”中的神经元。你们遵守这个原则吗?如果我将 NeuralNetwork 移动到 'nn.networks' 或其他什么?在这种情况下,它将引用同级包而不是子包。这是更好的做法吗?

0 投票
4 回答
1934 浏览

java - 您在包装中是否遵循任何准则(java)?

您是否遵循 java 包装中的任何设计准则?

适当的包装是设计技巧的一部分吗?有没有关于它的文件?

编辑:包必须如何相互依赖?循环包是不可避免的吗?与 jar 或 war 文件无关。