我正在尝试做一些我认为应该可行的事情,但我真的无法理解如何从webpack文档中做到这一点.
我正在编写一个包含多个模块的JavaScript库,这些模块可能相互依赖或不相互依赖.最重要的是,jQuery被所有模块使用,其中一些可能需要jQuery插件.然后,该库将用于几个可能需要部分或全部模块的不同网站.
定义我的模块之间的依赖关系非常简单,但定义他们的第三方依赖关系似乎比我预期的更难.
我想要实现的目标:对于每个应用程序,我希望有两个捆绑文件,一个包含必要的第三方依赖项,另一个包含我库中的必要模块.
示例:假设我的库具有以下模块:
我有一个应用程序(将其视为唯一的条目文件),需要模块a,b和c.此案例的Webpack应生成以下文件:
最后,我更喜欢将jQuery作为全局文件,因此我不需要在每个文件上都需要它(例如,我只需要在主文件上使用它).并且jQuery插件只是在需要时扩展$ global(如果它们可用于不需要它们的其他模块则不是问题).
假设这是可能的,那么这个案例的webpack配置文件的例子是什么?我在我的配置文件上尝试了几种加载器,外部和插件的组合,但我并没有真正了解他们正在做什么以及我应该使用哪些.谢谢!
我想知道为什么我的一个项目的VDSERR.h列在"外部依赖项"下,另一个项目没有,并且给出了一个关于在那里定义的符号的"未定义符号"编译器错误.如何将此文件也包含在其他项目中?(可能是通过拖放,但我想知道这里的确切设置.)
我们将Team Foundation Server用于我们的主项目.每当我们在现场或非现场添加新员工时,我们总是需要手动设置参考.
是否可以将TFS复制/保存/传递dll's
给新用户而无需每次都安装它们?
例如,我添加了新功能并安装DocumentFormat.OpenXml
到我的项目中.设置它运行的代码并在我的机器上正常工作,我发布它工作得很好.我把所有东西都签入了TFS.
我的同事下载项目尝试构建它并且错误地说它不知道该怎么做DocumentFormat.OpenXml
因为没有引用存在.
所以他们必须下载DocumentFormat.OpenXml
,然后他们可以构建和运行项目.
有没有办法让TFS拯救我们这一步?
tfs dependencies project-reference external-dependencies visual-studio-2010
我想使用系统蜂鸣器生成具有特定频率和长度(针对不同声音信号)的蜂鸣声(并且如果蜂鸣器不可用/可访问则仅扬声器).我知道可以通过使用ioctl来实现这一点,但这需要root访问权限,这是我不想要的.
我知道我可以使用"beep"命令,但这将是一个依赖项,如果可能的话,不应该使用它(根本没有外部依赖项,只有基本的linux库和C).
我目前拥有的是以下代码(但这需要超级用户权限才能运行):
#include <stdlib.h>
#include <fcntl.h>
#include <linux/kd.h>
int main(int argc, char *argv[])
{
int fd = open("/dev/console", O_RDONLY);
if (fd == -1 || argc != 3) return -1;
return ioctl(fd, KDMKTONE, (atoi(argv[2])<<16)+(1193180/atoi(argv[1])));
}
Run Code Online (Sandbox Code Playgroud)
如果没有其他方法可以做到这一点,那么我将使用蜂鸣声,但我真的想避免依赖并将蜂鸣声直接集成到我的脚本中,但我相信这里有人会知道解决方案/解决方法.
我真的不想要外部库,因为程序应该尽可能轻量级.
我想设计一个Scala程序,它接受Scala文件作为参数,可以自定义程序的执行.特别是,我想在运行时提供包含将由程序调用的方法的实现的文件.如何正确依赖外部文件并在运行时动态调用其方法?理想情况下,我还希望这些文件能够依赖于我的程序中的方法和类.
示例场景:我有一个包含该行的函数val p: Plant = Greenhouse.getPlant()
,并且Greenhouse
该getPlant
方法的类在将在运行时提供的其中一个文件中定义.在该文件中,该方法getPlant
返回a Rose
,where Rose <: Plant
和Plant
在原始程序中定义.假设文件仅在运行时加入而不是在编译时加入,我如何实现(或近似)这种相互依赖性?
在Processing中,我想导入一个用Java编写的库,它包装了一个外部库(.jar文件).
处理似乎导入我自己的库,但是当我调用构造函数(它引用外部库中的某些类)时,我java.lang.NoClassDefFoundError
在Processing GUI控制台中获得了一个.
如果不是在我的Eclipse构建路径中包含External .jar,我使用库的实际源代码并导出所有这些,Processing不会抱怨.
我怎样才能打包这个项目,这样我就不必在Eclipse项目中包含所有库的源代码(而只是包含.jar文件)?
更新:根据NLtelaviv的建议,我选择导出为Runnable JAR.对我有用的是选择"将所需的库复制到生成的JAR旁边的子文件夹"选项.在这里,将在输出包含引用的.jar库的.jar的位置旁边创建另一个文件夹.
Update2:另一个有效的选项是"将所需的库提取到生成的JAR中".这样做允许JAR在内部访问引用.似乎同样适用于NLtelaviv的建议,但情况似乎并非如此.如果您不想要任何额外文件,请选择此选项.如果您浏览.JAR文件,您会注意到外部库位于单独的包文件夹中.
我正在使用 rollup 来捆绑一个库,并且我希望将外部依赖项与我的代码一起包含在 UMD 捆绑包中。我在文档中找不到任何关于此的有用信息。可能我遗漏了一些明显的东西,但似乎文档仅演示了如何将相关模块标记为外部模块。我一直在努力实现这一目标,但没有成功。可行吗?如果可行,如何实现?
\n我的代码使用外部组件: src/index.ts
import { ExternalComponent } from \'external-component\'\n\nfunction MyComponent()\xc2\xa0{\n const externalComponent = ExternalComponent()\n // ...\n}\n\nexport default MyComponent\n
Run Code Online (Sandbox Code Playgroud)\n期望的输出: bundle.umd.js
function ExternalComponent() {\n // ...\n}\n\nfunction MyComponent()\xc2\xa0{\n const externalComponent = ExternalComponent()\n // ...\n}\n
Run Code Online (Sandbox Code Playgroud)\nrollup.config.js
import babel from \'@rollup/plugin-babel\'\nimport typescript from \'rollup-plugin-typescript2\'\nimport resolve from \'@rollup/plugin-node-resolve\'\nimport { terser } from \'rollup-plugin-terser\'\nimport localTypescript from \'typescript\'\n\nconst CONFIG_BABEL = {\n extensions: [\'.js\', \'.jsx\', \'.ts\', \'.tsx\'],\n exclude: \'node_modules/**\',\n babelHelpers: \'bundled\',\n}\n\nconst CONFIG_TYPESCRIPT = {\n tsconfig: \'tsconfig.json\',\n typescript: localTypescript,\n}\n\nconst …
Run Code Online (Sandbox Code Playgroud) 在微服务世界中进行性能测试时(主要是负载测试),您的应用程序依赖的外部依赖项 (API) 的方法是什么,但不由您的团队拥有/控制。在我的情况下,外部依赖项由同一公司内的团队拥有。那么您会指向相应的“真实”集成非产品端点,还是会创建存根并模拟它们的响应时间以尽可能匹配生产?
我意识到这两种方法各有利弊,根据测试的目标,一种方法优于另一种方法。但你最喜欢的是什么?不一定要在上述两者之间进行选择。可以是完全不同的。
Pinax开发过程中出现的一个问题是处理外部应用程序的开发版本.我试图提出一个不涉及引入版本控制系统的解决方案.原因是我不必在我的系统上安装所有可能的版本控制系统(或强制在贡献者身上)并处理在环境创建期间可能出现的问题.
采取这种情况(了解Pinax如何工作将有助于理解):
我们正在开发新版Pinax.以前的版本有一个pip需求文件,其中设置了显式版本.我们希望解决的外部应用程序出现错误.要在Pinax中修复该错误,当前的过程就是在假设我们控制应用程序的情况下简单地发布应用程序的次要版本.我们无法控制的应用程序,我们只是处理应用程序作者的发布周期或强制他们发布版本;-)我不太喜欢不断发布修复错误的小版本,因为在某些情况下我想成为同时致力于应用程序的新功能.当然,分支旧版本是我们的工作,然后根据需要进行后向移植.
我很想听听有关这方面的一些想法.
有许多类型的外部依赖项.与外部应用程序,组件或服务连接(例如,Outlook用于发送电子邮件,TWAIN或WIA用于扫描,ActiveX对象和Web服务用于各种目的,等等).
您确保应用程序是健壮的,并且即使这些外部依赖项(由于无数原因)不可用时也可以运行的策略是什么?
注意:您自己的源代码中包含的外部源代码是另一种外部依赖项,但这主要不是我在这里所关注的.
language-agnostic defensive-programming robustness external-dependencies
javascript ×2
beep ×1
c ×1
c++ ×1
dependencies ×1
django ×1
eclipse ×1
ioctl ×1
jar ×1
java ×1
linux ×1
packaging ×1
pinax ×1
processing ×1
python ×1
robustness ×1
rollupjs ×1
scala ×1
stub ×1
tfs ×1
typescript ×1
umd ×1
visual-c++ ×1
webpack ×1