npm2 使用

npm i pm2 -g

启动pm2(node进程守护)
进入到nuxt项目跟目录:使用pm2 start 命令启动项目并开启进程守护 
pm2 start npm --name geekdb -- run start

查看pm2里守护的node进程
pm2 list

pm2常用命令
0)查看:pm2中的项目pm2 list
1)启动项目:pm2 start xxx
2)删除pm2中启动的项目:pm2 delete xxx (xxx参数:pm2列表中的id,all)
3)停止pm2中启动的项目:pm2 stop xxx (xxx参数:pm2列表中的id,all)

#将pm2system.config.js的项目名改成对应的项目名,#然后上传到项目根目录
pm2 start dsshopsystem.config.js
#查看pm2列表中是否有刚才的进程
pm2 list
# 开机自动启动
pm2 save
pm2 startup

npm i导致了许多问题的解决

ERESOLVEnpm@7有关的问题很常见,因为npm7.x对某些事情比npm6.x更严格。通常,最简单的解决方法是将--legacy-peer-deps标志传递给npm(e.g.,npm i --legacy-peer-deps),或者使用npm@6

如果这不能立即起作用,也许可以先删除node_modulespackage-lock.json。它们将被重新创建。

(提示:使用npm@6不需要卸载npm@7。使用npx指定npm的版本。例如:npx -p npm@6 npm i --legacy-peer-deps。)

call_user_func_array

public function get_products_price_v2($hq_code, $product_ids, $orgz_id = null, $genre = 6)
    {
        $is_model = new InStockModel();
        $result = call_user_func_array([$is_model, 'get_latest_instock_product_price_dict'], func_get_args());

        if (count($product_ids) == count($result)) {
            return $result;
        }
        //缺失价格从商品主档获取
        $product_facade = new ProductsFacade();
        $bid_price = $product_facade->get_product_info($product_ids, ['reference_bid_price']);
        foreach ($bid_price as $key => $value) {
            if (!isset($result[$key])) {
                $result[$key] = $value['reference_bid_price'];
            }
        }
        return $result;
    }

SPRING APPLICATION使用@ 使用的问题:’@’ THAT CANNOT START ANY TOKEN. (DO NOT USE @ FOR INDENTATION)

错误信息:

Exception in thread "main" while scanning for the next token
found character '@' that cannot start any token. (Do not use @ for indentation)
 in 'reader', line 4, column 11:
        name: @project.artifactId@

解决办法:

<resources>
    <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
    </resource>
</resources>

<plugins>
	<plugin>
	    <groupId>org.apache.maven.plugins</groupId>
	    <artifactId>maven-resources-plugin</artifactId>
	    <version>2.7</version>
	    <configuration>
	        <delimiters>
	            <delimiter>@</delimiter>
	        </delimiters>
	        <useDefaultDelimiters>false</useDefaultDelimiters>
	    </configuration>
	</plugin>
<plugins/>

使用Maven的资源过滤(resource filter)自动暴露来自Maven项目的属性,如果使用spring-boot-starter-parent,你可以通过@…@占位符引用Maven项目的属性,例如:
app.encoding=@project.build.sourceEncoding@
app.java.version=@java.version@
注 如果启用addResources标识,spring-boot:run可以将src/main/resources直接添加到classpath(出于热加载目的),这就绕过了资源过滤和本特性。你可以使用exec:java目标进行替代,或自定义该插件的配置,具体查看插件使用页面