小编Wee*_*ooo的帖子

VS 2017命令行错误D8004

我别无选择,我正在尝试在 Visual Studio 2017 Community 上使用 GoogleTest,但它给了我很多

警告 C4996:'std::tr1':警告 STL4002:非标准 std::tr1 命名空间和仅 TR1 的机器已弃用并将被删除。您可以定义 _SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING 以确认您已收到此警告。

我想抑制它,所以我进入“项目属性”->“C/C++”->“高级”->“抑制特定警告”,然后尝试

/wd4996
/wdSTL4002,
/wd4996;
/wdC4996
/wd[4996]...
Run Code Online (Sandbox Code Playgroud)

等等,老实说,我尝试了所有可能的组合,这让我很困惑

2>cl : 命令行错误 D8004: '/wd' 需要参数

有人可以准确地向我发送我需要写的内容来抑制这种情况吗?

c++ suppress-warnings visual-studio-2017

6
推荐指数
2
解决办法
8760
查看次数

不能在 SpringData 中使用 String 作为 @Id

我想使用这个类在我的数据库上创建新表

@Entity
@Table(name = "currency_rate")
public class CurrencyRate {

    @Id
    private String id;

    @Column(name = "source_currency")
    private String sourceCurrency;

    @Column(name = "target_currency")
    private String targetCurrency;

    @Column(name = "exchange_rate")
    private double exchangeRate;

    @Column
    private Date date;

    @PrePersist
    public void generateID() {            
        this.id = this.date.toString().replace("-", "") + sourceCurrency + targetCurrency;
    }
    //getters, setters
}
Run Code Online (Sandbox Code Playgroud)

当我尝试使用属性运行我的应用程序时

spring.jpa.hibernate.ddl-auto=create
Run Code Online (Sandbox Code Playgroud)

我得到了这个例外

引起:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException:指定的键太长;最大密钥长度为 1000 字节

好像不能用 Spring 作为我的 ID?将类型更改为 Long 可以解决问题,但我真的很想将 String 与这个一起使用。从我搜索的内容来看,它应该是完全可行的。

mysql spring spring-data

5
推荐指数
1
解决办法
904
查看次数

运行 GitLab CI 作业时指定的任务可执行位置无效

我正在尝试使用 GitLab CI 为我的 .NET Core 应用程序设置 CICD。

让我们从我的开始.gitlab-ci.yml

image : microsoft/dotnet:latest
before_script:
  - 'cd Backend'
  - 'dotnet restore'
build:
 stage: build
 script:
  - 'dotnet build -c Release /p:DeployOnBuild=true /p:PublishProfile=Properties/PublishProfiles/WebioProfile.pubxml'
 only:
   - cicd_test
Run Code Online (Sandbox Code Playgroud)

我正在WebioProfile使用

<?xml version="1.0" encoding="utf-8"?>

<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <WebPublishMethod>MSDeploy</WebPublishMethod>
    <LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <SiteUrlToLaunchAfterPublish>http://xxx.hostingasp.pl/</SiteUrlToLaunchAfterPublish>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <ProjectGuid>03120c29-ae98-4c30-9b8c-7ec70f6642fd</ProjectGuid>
    <MSDeployServiceURL>ssl3.xxxx.hostingasp.pl</MSDeployServiceURL>
    <DeployIisAppPath>xxxx.hostingasp.pl</DeployIisAppPath>
    <RemoteSitePhysicalPath />
    <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
    <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
    <EnableMSDeployBackup>True</EnableMSDeployBackup>
    <UserName>user</UserName>
    <Password>password</Password>
  </PropertyGroup>
</Project>
Run Code Online (Sandbox Code Playgroud)

git push origin cicd_test

我收到此错误 GitLab 作业控制台

/builds/username/project/Backend/Backend.csproj 的恢复在 58.11 毫秒内完成。
后端 -> /builds/username/project/Backend/bin/Release/netcoreapp2.1/Backend.dll 后端 -> /builds/username/project/Backend/obj/Release/netcoreapp2.1/PubTmp/Out/ …

continuous-integration continuous-delivery gitlab gitlab-ci .net-core

5
推荐指数
1
解决办法
1708
查看次数

Stream()。map()结果作为Collectors.toMap()的值

我想要List<InstanceWrapper>为每个元素做一些逻辑运算,从而得出一些结论String message。然后,我要进行create Map<String, String>,其中key是InstanceWrapper:ID,value是message

private String handle(InstanceWrapper instance, String status) {
    return "logic result...";
}

private Map<String, String> handleInstances(List<InstanceWrapper> instances, String status) {
    return instances.stream().map(instance -> handle(instance, status))
                    .collect(Collectors.toMap(InstanceWrapper::getID, msg -> msg));     
}
Run Code Online (Sandbox Code Playgroud)

但是它不会编译,我会明白,如何将stream().map()结果转化为collectors.toMap()价值?

The method collect(Collector<? super String,A,R>) in the type Stream<String> is not applicable for the arguments (Collector<InstanceWrapper,capture#5-of ?,Map<String,Object>>)
Run Code Online (Sandbox Code Playgroud)

java java-8 java-stream

1
推荐指数
1
解决办法
65
查看次数

C++销毁基类导致调试断言失败

我正在尝试学习更多关于多态的知识,我试图让它变得尽可能简单,所以我得到了基类图和2个派生类Rectangle和Circle.

class Figure {
public:
    Figure() { cout << "Creating Figure\n"; }
    virtual ~Figure() { cout << "Destroying Figure\n"; }

    virtual double calculateField() {
            return 0;
    }
};

class Rectangle : public Figure
{
public:
    Rectangle(double m_a) : p_a(m_a) { cout << "Creating Rectangle\n"; }
    ~Rectangle() { cout << "Destroying Rectangle\n"; }

    virtual double calculateField() {
        return p_a*p_a;
    }

private:
    double p_a; 
};

class Circle : public Figure
{
public:
    Circle(double m_r) : p_r(m_r) { cout << "Creating Circle\n"; } …
Run Code Online (Sandbox Code Playgroud)

c++ polymorphism virtual

0
推荐指数
1
解决办法
75
查看次数