设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6162|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 I( B# l* J( D  {
2 G7 v# y, n. x' E9 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 B$ v5 f. C( L% F+ t7 t& q" Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
; Q, H% `- }; m2 }1 Oswarm.SignatureNotFoundException9 y1 x& g( u% w9 ]3 i' n
        at swarm.Selector.<init>(Selector.java:76)
: }, g! o# Q; U+ g        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 T$ H  e3 W6 w& V' r$ C        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- f2 e+ ]$ i0 Y% I7 R) l
9 R- W4 `; c; O( G8 R# X$ f* a$ _. c7 P6 \- ^( l
import swarm.objectbase.SwarmImpl;/ J* B) L1 B# z3 `
import swarm.objectbase.Swarm;
1 |- T. S! `- [1 y( r6 `import swarm.activity.ScheduleImpl;, @  C6 O7 X1 d
import swarm.activity.Activity;
9 `: ?# D5 T9 l' x: W; limport swarm.activity.ActionGroupImpl;( \' a6 C: y3 ~, z
import swarm.collections.ListImpl;. e/ ~  A. S! d! B0 m
import swarm.defobj.Zone;
6 |  ~! o2 m6 H! q% P2 J4 ]import swarm.Globals;& G4 ]( U/ K3 B3 i8 b7 _1 R
import swarm.Selector;
' v' X: S6 K* d% A: \' jimport swarm.activity.ActionGroup;
" y) _' s5 n* h; mclass Agent {
' W+ {/ T  r/ [" P0 t* S        char id;
- s1 U: {: L; ?7 B' z
  e/ Q3 x, ?: J        Agent(char id) {
5 R3 M$ f1 ?' f% e                this.id = id;9 [' O. ^& I/ x+ z. v# [
        }, N9 A" N2 E' k; G# H

8 s& }9 I) G1 k* C% l* e        public void agentStep() {8 |7 n! G* H' e# e
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 S  @7 e; h1 Z
        }: \9 ]5 N8 y* c
}- }  P3 F+ ^# {' V! p
- s. Y  C# D7 q5 l  x8 G( n
public class ActionGroupDemo extends SwarmImpl {: r! I0 H0 Z% o& U
        ScheduleImpl schedule;6 v1 p8 E8 v' X
        ActionGroupImpl actionGroup;
( U' }  [3 k0 m. O: N9 l) D        ListImpl list;
+ l: v& C5 n  g. u, E        char Id = 'a';
" P6 ^6 a& p5 s0 M/ S$ u; a' L! Z/ r
        ActionGroupDemo(Zone aZone) {1 l% x+ b) y* J
                super(aZone);
# [. I. z& e& p! A5 l. y( C, u                list = new ListImpl(aZone);4 Z4 `4 P& D0 t" o+ g! x" ^
                swarmSetp();6 C3 k1 N, d1 D- K, h2 d+ e5 ^
                actionGroup = new ActionGroupImpl(aZone);
- U. [2 k' x+ n" C                schedule = new ScheduleImpl(aZone);
( c6 u8 Y. G# S4 G0 U& K: ^                try {
) t5 a4 g! D4 S' m: U2 r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( L+ X: K( B2 t& K! D% D0 i) B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: r" p' n8 P! r* ^
                        0 i5 M: z0 R8 x  F; n) I# t/ p
                        actionGroup.createActionForEach$message(list, agentSel);
# s+ w3 H7 p7 x, _, ]8 }                        actionGroup.createActionTo$message(this, swarmSel);
. @/ j" A. I" G8 T                        schedule.at$createAction(0, actionGroup);
2 A" r& E7 G/ u% J2 |- q                        schedule.at$createAction(1, actionGroup);
9 [7 Q: D1 \6 u* C                        schedule.at$createAction(2, actionGroup);$ J) y  \( z7 d2 Q& r
9 M1 |) j/ Q: f3 a
                } catch (Exception e) {' C) i' }! T9 N& n5 ]) H
                        e.printStackTrace(System.err);
, T; M- A, N6 y/ J( e' V* s6 U2 a                        //System.out.println(e);
- E" q3 D5 n; z0 M                        System.exit(1);
. C$ e+ C' F" \& ], [                }
2 Q; X4 L. K  @; I9 [& V) P( C8 h

% T+ {: s8 O& N        }
; c! f7 ^0 |- \1 Q2 Z' V) X9 ~
$ P- h4 m& `/ c" H        private void swarmSetp() {
2 c3 }+ r9 q7 V( C$ X' L: C5 ?                list.addLast(new Agent(Id));( x1 O# f; w) ?, p/ {
                Id++;2 m. w9 s" L  a* V; d) e" ~0 @! y" @
        }
& R' n$ u! l  P' C
$ @3 w7 n% |" F2 g        public Activity activateIn(Swarm context) {2 p# A) V% t8 n  R# H; u; N5 l& ?
                super.activateIn(context);
& h3 h  E  G; R" D3 u: @                schedule.activateIn(this);9 o5 C! M- e/ e- l( U( N( k3 H$ r* C
                return getActivity();) p! {! n' Y, H
        }. P8 w/ D3 I% v
( |& d( C- v1 O9 s% h- K, ^
        public static void main(String[] args) {* D9 q7 I* A5 ?# u( ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 f8 u* D' t5 k; x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 d$ J4 U/ }! C8 y                swarms.buildObjects();# I) y* C$ i5 I* d1 {! v4 o
                swarms.buildActions();, A8 T* V/ j2 H) G8 _8 S$ g
                swarms.activateIn(null).run();% C' ]) H" ?! v  R1 _3 k
        }9 ?7 ^9 Y: E" g9 T  t, J7 s. T
& t; ?: S0 M# v& {: k+ F( }! r0 G
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-1-20 00:21 , Processed in 0.019493 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表