设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7532|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & s% P) c% ?$ }

/ ?& P3 d: u# [7 ]9 s本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! s1 i- R6 g+ m) ~. Y% b3 @7 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." `7 @  v6 m7 e
swarm.SignatureNotFoundException4 ?$ J2 \0 d5 I) e& X
        at swarm.Selector.<init>(Selector.java:76)
; |* X; L. @3 `) O        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* G' C. P& y, ?% u        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 a. n3 d! [, u" q- }: S6 ]
5 H/ S7 R5 ]# n
" b" O% ?# E  D! p; B' k
import swarm.objectbase.SwarmImpl;
1 F% x" z  u5 Ximport swarm.objectbase.Swarm;
& H- L" z1 t3 x0 \4 I; O, _import swarm.activity.ScheduleImpl;9 b" U0 `2 |  T8 @& Z
import swarm.activity.Activity;  [! M6 L6 ?. X8 P/ Q
import swarm.activity.ActionGroupImpl;
3 B8 J0 w: A# g7 d9 aimport swarm.collections.ListImpl;
3 H/ Q, j/ L+ \! v! L6 K- U7 iimport swarm.defobj.Zone; & G7 u% C: E: `  A1 X$ W9 Z$ N
import swarm.Globals;5 n. N  q9 n1 p$ y+ K7 Q- l
import swarm.Selector;
4 w. G" W) q% E' Q0 eimport swarm.activity.ActionGroup; - i8 `3 ?5 d; g* R
class Agent {
: ~0 K* f7 c/ t5 w; _. Y% r        char id;
( p; w7 y7 k% j, i; p( u( ]$ O' y6 t; e
        Agent(char id) {
% d# z, j& l" Q, P                this.id = id;
& H4 N. R  I* L3 @  _        }& e4 U, N; E& v! J) e
9 Q: a* ~5 n7 m# a8 q9 a( E
        public void agentStep() {
7 J4 W8 K$ T7 F0 U                System.out.println(id + ":" + Globals.env.getCurrentTime());; O5 N/ k' W, q- N. m
        }, ]  `9 }8 g9 {3 K0 W( p
}
9 z. A+ r/ F! S8 r  ?9 E' a
- c- ?' P/ r8 m: k- \: _; L# _( Dpublic class ActionGroupDemo extends SwarmImpl {! C/ G1 D: L9 Y# C+ A; t
        ScheduleImpl schedule;
: j6 t( i# x+ f; }; }        ActionGroupImpl actionGroup;2 h; a' \; I5 @1 g
        ListImpl list;3 {- Q: Q' n$ n) T' Q
        char Id = 'a';( H7 k3 M/ x7 ?( Z6 l1 ?

/ O: _0 `  {7 n        ActionGroupDemo(Zone aZone) {. a  d3 @: g; W- w! ]! O+ M
                super(aZone);
9 `! `9 ~, ]+ C4 f& t- L1 U                list = new ListImpl(aZone);
; b. V" E3 c7 M, K. _0 z8 S                swarmSetp();" i' T1 g5 V& Z
                actionGroup = new ActionGroupImpl(aZone);
2 `7 U3 x5 s! y( L                schedule = new ScheduleImpl(aZone);  p( e& x# E# c4 l5 q3 h. f
                try {  c0 ]. l' V4 d2 m6 r
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 `9 Q6 V8 t* p$ M* J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; N6 [4 g# @! o4 d! N
                        
* }4 j3 ^3 H  S$ C6 q0 [" k                        actionGroup.createActionForEach$message(list, agentSel);# E0 w" g+ D0 ?5 M" `# U9 }1 F
                        actionGroup.createActionTo$message(this, swarmSel);( H8 D) o" I3 O- |0 b# W. r1 I3 K
                        schedule.at$createAction(0, actionGroup);6 s2 P& j6 s& j7 A* `
                        schedule.at$createAction(1, actionGroup);
& l$ G" G1 M, U1 k8 ?                        schedule.at$createAction(2, actionGroup);# I6 I+ F# ]4 A7 K" x5 |
3 B* O6 H% e# E# U( R' Y
                } catch (Exception e) {
$ e8 h& {$ d* ~2 r) D                        e.printStackTrace(System.err);, L( {9 @9 a4 ?) A0 t/ U
                        //System.out.println(e);0 v. H5 G6 q% U; c, J% p  _8 r& q
                        System.exit(1);
/ g5 L# @3 o/ P7 C5 P; P, g6 w                }
3 v5 Z. I, ~# Q3 ]
, r0 z( _5 @! a8 y% T; S; m5 ]! N1 Z" ~% v+ _
        }
* }* y' m- R  A' c6 O4 T3 g: z4 Y
" i! T' t2 I/ z; W0 |        private void swarmSetp() {
1 [- F0 W) {6 C$ N4 G; k7 h) P                list.addLast(new Agent(Id));
5 f+ S/ S6 T1 e                Id++;
( I# m$ o! E& O) u1 _9 j        }( B/ e) N* X" e% Y

' i1 ~6 ]( w. H% _( E0 p        public Activity activateIn(Swarm context) {9 @8 ~, A* D8 _1 t4 n, i
                super.activateIn(context);/ D3 j0 Y9 A, n( I0 M2 T6 L! }
                schedule.activateIn(this);
1 X6 r, [. E% O" Z: Z                return getActivity();
5 r9 J' f* ]: T. F* a& }5 U8 u        }
4 ]3 \: d- g6 V, D
$ h* ?; k$ G+ P/ c2 z: N        public static void main(String[] args) {
( f( z* o% T) I. x                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# d; b8 r) y' o* ]' M5 w( u8 ]: a                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- l& ~; Y8 }. Z
                swarms.buildObjects();% x: n, f% e$ R  d& l
                swarms.buildActions();
( K3 f9 X$ k5 J: B% |& Y- C                swarms.activateIn(null).run();, E: {) I9 w4 k3 V/ {7 k
        }
) U- y* o; F, e" `5 D4 u* e! n! s; E+ P. B3 G8 Z6 ~4 {* ^1 w) s
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-5 20:36 , Processed in 0.017906 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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