我有以下示例不完整的方法来比较给定对象的对象类型
public void test(Object value) {
if (value.getClass() == Integer) {
System.out.println("This is an Integer");
}else if(value.getClass() == String){
System.out.println("This is a String");
}else if(value.getClass() == Float){
System.out.println("This is a Float");
}
}
Run Code Online (Sandbox Code Playgroud)
我们可以这样称呼这个方法
test("Test");
test(12);
test(10.5f);
Run Code Online (Sandbox Code Playgroud)
这个方法实际上没有用,请帮我搞定
我一直试图阻止 heroku 修剪我的开发依赖项。这是我的配置:我的构建脚本是:"build": "NPM_CONFIG_PRODUCTION=false webpack -mode production"
并且我添加了"heroku-postbuild": "npm run build"
我的依赖项:
"dependencies": {
"express": "^4.16.3",
"react": "^16.5.2",
"react-dom": "^16.5.2"
},
"devDependencies": {
"@babel/core": "^7.0.0",
"@babel/plugin-proposal-class-properties": "^7.0.0",
"@babel/preset-env": "^7.0.0",
"@babel/preset-react": "^7.0.0",
"babel-eslint": "^10.0.0",
"babel-loader": "^8.0.0",
"clean-webpack-plugin": "^0.1.19",
"concurrently": "^4.0.0",
"css-loader": "^1.0.0",
"eslint": "^5.0.0",
"eslint-config-airbnb": "^17.0.0",
"eslint-plugin-import": "^2.11.0",
"eslint-plugin-jsx-a11y": "^6.0.3",
"eslint-plugin-react": "^7.7.0",
"file-loader": "^2.0.0",
"html-webpack-plugin": "^3.2.0",
"nodemon": "^1.17.3",
"style-loader": "^0.23.0",
"url-loader": "^1.0.1",
"webpack": "^4.5.0",
"webpack-cli": "^3.0.8",
"webpack-dev-server": "^3.1.3"
}
Run Code Online (Sandbox Code Playgroud)
我将不胜感激任何有关配置的帮助,因为我不想将我的开发依赖项添加到我的依赖项中。
我已经建立了一个门户网站,其中一个页面列出了Octopus Deploy的版本.但是,每个版本所需的一些信息都保存在数据存储(共享驱动器)中的zip中.
我目前从Octopus的API获得版本,然后检查mongo db已经访问过的zip文件中存储的信息,所以我们只需要在第一次创建zip文件时读取一次.
目前所有这些逻辑都适用,但是当它第一次读取zip文件时它完全阻塞了.所以我把它放在一个运行良好的子进程中.
目前,每次用户点击发布页面时,所有这些的逻辑都会运行.如果章鱼部署的所有结果都在数据库中,那么它只返回那些结果.如果没有,它将返回结果,然后在子进程将数据库插入数据库后,使用socket io返回从zip文件读取的信息.
现在实际的问题/问题.如果用户A点击页面并从章节中获取不在数据库中的版本,则每次用户点击页面时它都会运行,它将启动子进程以读取zip.如果用户B在用户A的子进程完成之前命中页面,他们也将从不在数据库中的章鱼获得释放,因此将尝试命中子进程以执行与用户A相同的操作.但是因为代码到读取zip文件阻止它等待所有zip文件从用户A读取然后重复用户B的进程.
我如何检查子进程是否已经执行了zip读取,如果没有则执行则执行其他操作?
我尝试设置'inuse'变量并在尝试在子进程中以及在调用它的模块中执行read zips函数时进行检查.麻烦在于子进程中,zip读取函数阻止它,一旦完成将使用中的变量设置为false,因此排队的调用运行相同的事情.在模块中,每次用户加载页面时都会加载它,因此将其重置为默认值false,因此始终会调用read zip函数.
我有一个这样的对象:
const users = {
adam: {
age: 28,
extraInfo: 'foobar',
},
brad: {
age: 31,
extraInfo: 'foobar',
},
jef: {
age: 12,
extraInfo: 'baarfoo',
},
};
Run Code Online (Sandbox Code Playgroud)
如何检查哪个对象具有“ age”属性的最高值并将该对象设为常量?
我尝试过使用Object.keys(),将数据抛出到Array并进行减少,但最后,所有这些方法都无法按我的意愿工作。我已经在这个问题上停留了几个小时。
因此,每当我在我的React项目中运行npm start时,它都会给我这个错误:
myapp@0.1.0启动C:\ Users\AyaLe\Desktop\React\myapp react-scripts启动
项目依赖关系树可能存在问题.它可能不是Create React App中的错误,而是您需要在本地修复的内容.
Create React App提供的react-scripts包需要依赖:
"webpack":"4.19.1"
不要尝试手动安装它:您的包管理器会自动进行安装.但是,在树中检测到更高版本的webpack:
C:\ Users\AyaLe \node_modules\webpack(version:3.10.0)
已知手动安装不兼容的版本会导致难以调试的问题.
如果想忽略此检查,请将SKIP_PREFLIGHT_CHECK = true添加到项目中的.env文件中.这将永久禁用此消息,但您可能会遇到其他问题.
要修复依赖关系树,请按照确切的顺序尝试执行以下步骤:
- 删除项目文件夹中的package-lock.json(不是package.json!)和/或yarn.lock.
- 删除项目文件夹中的node_modules.
- 从项目文件夹中package.json文件中的依赖项和/或devDependencies中删除"webpack".
- 运行npm install或yarn,具体取决于您使用的包管理器.
在大多数情况下,这应该足以解决问题.如果这没有帮助,您可以尝试其他一些事项:
如果您使用了npm,请安装yarn(http://yarnpkg.com/)并重复上述步骤.这可能会有所帮助,因为npm已知包裹提升的问题,可能会在将来的版本中得到解决.
检查C:\ Users\AyaLe \node_modules\webpack是否在项目目录之外.例如,您可能不小心在主文件夹中安装了某些内容.
尝试在项目文件夹中运行npm ls webpack.这将告诉您安装webpack的其他软件包(除了预期的react-scripts).
如果没有其他帮助,请将SKIP_PREFLIGHT_CHECK = true添加到项目中的.env文件中.这将永久禁用此预检检查,以防您仍然想要继续.
PS我们知道此消息很长但请阅读上述步骤:-)我们希望您发现它们有用!
错误的ERR!代码ELIFECYCLE npm ERR!错误1 npm ERR!myapp@0.1.0开始:
react-scripts startnpm ERR!退出状态1 npm ERR!错误的ERR!在myapp@0.1.0启动脚本失败.错误的ERR!这可能不是npm的问题.上面可能有额外的日志记录输出.错误的ERR!可以在以下位置找到此运行的完整日志:npm ERR!
C:\ Users \用户AyaLe \应用程序数据\漫游\ NPM-cache_logs\2018-12-02T10_15_24_630Z-的debug.log
每当我尝试安装webpack-cli时,无论何时它要求我,它都会给我另一个错误