设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 14009|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* \- @+ l$ @; r
0 Q. ?* ~. E& G# l( E% M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" H$ V  v7 }" ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# n9 m& W6 W( q+ z  ]  C
swarm.SignatureNotFoundException
- h, j/ ~3 h$ e6 L7 Z- N3 [& M5 D( y  }" A        at swarm.Selector.<init>(Selector.java:76)+ P  U8 ~' Z5 a* Z* s3 @1 k1 R) r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 v4 j! \8 C. k, ?9 d# K. B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- j! ]9 C: [, d" ?8 M7 I4 X

8 n3 f) D6 I( {# b" F0 C3 X5 S
) Y! l  [8 ~! w& ~; I+ @import swarm.objectbase.SwarmImpl;* |3 q1 D0 ?$ N8 E9 v" l4 a
import swarm.objectbase.Swarm;9 r5 C2 e4 E& h% _6 N
import swarm.activity.ScheduleImpl;
5 j1 A, n; R- ?# Gimport swarm.activity.Activity;6 O7 _4 L; R, H8 `0 g
import swarm.activity.ActionGroupImpl;
  E( C( K9 {, O. ^0 u, _import swarm.collections.ListImpl;8 Z" f# Q! L( X6 H: m6 |- O
import swarm.defobj.Zone;
4 ?+ e. y( E/ k& s$ g- }$ eimport swarm.Globals;
/ y/ s# Z1 K% t* `" Pimport swarm.Selector;
7 X2 G$ i, G0 B7 o; }- yimport swarm.activity.ActionGroup;
9 ~) D- L+ r) r) m6 H6 Wclass Agent {7 O; U, z* z7 \1 k% U' V
        char id;6 ?4 C8 g* [. C; C  [* D) u1 B0 S

2 N8 t6 m2 ?+ q* W9 q        Agent(char id) {- u7 ]3 H& H: N0 D- `! k) B& D
                this.id = id;* d7 E% L: v$ g# x( n: A3 |
        }3 J( ~3 [. a# g5 i& T7 @; l

8 }' x0 T4 k7 I9 C0 Z# I8 F        public void agentStep() {8 ~4 d! m/ I+ T5 C' X, O% F
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 y0 Z2 ]; ]: ^9 Z8 f        }/ A! M) L1 J6 t1 b& {5 [  ^8 y
}. ]5 D2 a5 }/ I7 t4 W9 G

, L! c" r3 @* W4 C  ?' ~4 c2 V* spublic class ActionGroupDemo extends SwarmImpl {
5 N+ I2 w1 A4 H+ _1 A5 _        ScheduleImpl schedule;
" W. ?) x/ Y7 i" A        ActionGroupImpl actionGroup;* e9 y9 v( ], w
        ListImpl list;
; z- m/ k1 ]* K1 e        char Id = 'a';
" g' M6 ?* ]! V, O7 F! }) G# q1 Z& l
        ActionGroupDemo(Zone aZone) {; g7 V2 K& }# J. X7 B8 Z  S, O
                super(aZone);
- T- J, R( o( _2 t2 ]$ {1 R, I                list = new ListImpl(aZone);
; l% ~6 \% f9 }" G                swarmSetp();
2 M8 a9 I9 O$ B* k" t, q  {* f! e                actionGroup = new ActionGroupImpl(aZone);2 [; X5 g( Q6 I& ?
                schedule = new ScheduleImpl(aZone);
5 k- @5 W; c, Y* k                try {& y( w9 l. T( _1 e' C
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);% a6 |1 v* ^5 O/ N
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! E  p7 {, i& X$ q6 e  m: z
                        " |, g& ]/ Z& u/ [6 D
                        actionGroup.createActionForEach$message(list, agentSel);0 v+ ~* y4 z' M0 ?
                        actionGroup.createActionTo$message(this, swarmSel);4 R8 p6 r) e* `+ V8 G
                        schedule.at$createAction(0, actionGroup);7 W. x5 c: r: c: X. f
                        schedule.at$createAction(1, actionGroup);
& E1 A( C2 C# F" ?- G2 d+ N                        schedule.at$createAction(2, actionGroup);
' j* a; \2 B& J" R) W- a% G" U! _! V, ]
                } catch (Exception e) {4 K$ |. [1 Y$ f% N" B2 @
                        e.printStackTrace(System.err);: ]8 E  L  i# E/ j# v
                        //System.out.println(e);
. U) p8 D. ?6 F/ k3 H. ^+ Q                        System.exit(1);
, ^# w: H4 s9 K- [$ `# m                }) o' W" n* S- I: o
. d! w* Z3 v. T7 m, C
: w- ~: K# }- I0 `: q. b  p; d
        }
# D1 g1 b! y6 R4 z6 V6 ^
8 _1 y. B% q) j% G0 Q& u        private void swarmSetp() {- V+ {+ A5 j! V& h2 E6 x
                list.addLast(new Agent(Id));; J% c0 N) i% R% Q* H: z) d3 _
                Id++;
. ?) ~/ p& D  W$ ]/ S/ f        }
: e( W4 s! b- Y7 O# v* ^8 ]0 l2 {6 @7 E: l
        public Activity activateIn(Swarm context) {& i0 [5 \7 i3 b8 I# M
                super.activateIn(context);. `5 G' F& t: g" L5 L5 D
                schedule.activateIn(this);+ F2 {- i! U% c2 O
                return getActivity();& C$ w/ C; ~- E7 [" k, d. e
        }% z! ~# u& \1 I! j/ f% s1 Y" l

) f' z* |& @+ x( p( L        public static void main(String[] args) {
, q( _. Y1 p+ e' E! h% w5 B% ^2 K' f                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  U5 s( b5 k( M! ^! p5 l; e7 w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' V5 H2 f/ U/ N. C# c                swarms.buildObjects();- m* ]+ V/ C; p/ d& J
                swarms.buildActions();
+ V% b, b6 ~8 _0 N                swarms.activateIn(null).run();
7 @2 n+ G4 b" i, U7 _        }' b8 f  P5 \0 l. b* k1 c

/ s; ~! n9 h+ l5 E}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-25 00:06 , Processed in 0.020322 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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