设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8345|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, A! |' n& P4 i$ Y, \6 E% J! t; W- ~% x: s& S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: L- |3 J& v6 [9 o' B/ X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 H( v# m& v* y* ]* B$ ~3 L+ h
swarm.SignatureNotFoundException
' T7 {/ @, S- F" R6 j( z        at swarm.Selector.<init>(Selector.java:76)
  |/ s! E! i8 s( Y: N6 _( s) V        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) e/ c( Y: U7 l+ y! S
        at ActionGroupDemo.main(ActionGroupDemo.java:67): O5 F% N& u+ T) e1 C+ Q4 S% ^+ X& R

( a' J. z7 U5 }" p, N9 S+ u+ y) j5 Q- G% }6 t- ?1 A7 b% o) H8 k0 ]
import swarm.objectbase.SwarmImpl;4 Z2 M2 r! S, R- c8 L: f
import swarm.objectbase.Swarm;
( _6 o6 L" f$ p2 R' ]0 E) Rimport swarm.activity.ScheduleImpl;
# B1 R0 e5 D* ?" Y; y& B* |import swarm.activity.Activity;
9 I$ S% S# L. g/ a% C2 u4 t( _; Himport swarm.activity.ActionGroupImpl;+ N) Y. G) ]: ]0 L
import swarm.collections.ListImpl;% s2 I5 }% i+ ^* R* k' R: F  v- n+ n
import swarm.defobj.Zone;
  K+ o' ~' @  |2 S, Jimport swarm.Globals;
% F9 d: Y5 h  @& x) \9 ~  kimport swarm.Selector;& M0 x3 _" M+ q- a7 y( y  |
import swarm.activity.ActionGroup;
2 d  t' O# s. u+ s* h* hclass Agent {
4 o8 n+ [7 m: k6 \# L        char id;' q# ]. ^7 N- c# [. w# ~4 U* L
2 K; o" x# l- d# h% [$ a4 _! Y# ^7 @+ t
        Agent(char id) {
: O7 a& x0 L. p                this.id = id;
) J8 j0 v: N/ V        }" H7 m0 q+ T6 W% d8 I

/ ^4 ~, H% o) b! u5 R: Z( J        public void agentStep() {
/ b" i/ R4 D9 n& e) k                System.out.println(id + ":" + Globals.env.getCurrentTime());
( o! f( h, ?" j' ~* }        }' k& e0 W' u8 S  a, m( H; ?2 b
}
8 K/ J) P  L4 F0 H! a" z! a* j: N( O0 c. M4 V5 k3 Q! O
public class ActionGroupDemo extends SwarmImpl {8 x; F7 n4 z/ t3 l
        ScheduleImpl schedule;) {: {$ T& N) b7 E! v
        ActionGroupImpl actionGroup;
) w$ C8 F" K6 g6 L        ListImpl list;
+ p  Q5 v/ j- S3 K        char Id = 'a';& W* ~8 B& N! c. B
1 f: s. |. k4 V% @  v8 V5 p2 W" o
        ActionGroupDemo(Zone aZone) {
8 u# L6 [3 ~& ^" L) ]4 U. ]                super(aZone);
6 D% K7 ~8 W/ `1 ?" C* t" X                list = new ListImpl(aZone);5 y- r9 p+ T* K7 S" X' q: z9 n
                swarmSetp();2 N. B: R3 |, @# R. Z) \$ N$ }
                actionGroup = new ActionGroupImpl(aZone);) s; f8 _5 [$ ^  ]# V- w
                schedule = new ScheduleImpl(aZone);
( z8 P" p' c4 _2 {                try {- _) K' x& q2 ~: W4 w1 Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( C( X1 \" |% C$ G2 s                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! [  m0 D0 Y+ c2 t                        
) o, d/ e2 W! Y# t                        actionGroup.createActionForEach$message(list, agentSel);  E+ A* L% \2 u* J
                        actionGroup.createActionTo$message(this, swarmSel);; W! H8 h: u& _, {: A- b: ^
                        schedule.at$createAction(0, actionGroup);$ l3 x) M, @# `% [& E! d
                        schedule.at$createAction(1, actionGroup);7 q3 z9 ]9 d* U1 c3 ]6 n
                        schedule.at$createAction(2, actionGroup);7 I, X- c: {+ o2 S; t; q( K

, H3 d, G6 u5 u3 K                } catch (Exception e) {+ M1 K) Y: ^  b2 a" j
                        e.printStackTrace(System.err);. F: k. g2 S. j# {& m
                        //System.out.println(e);
) k8 e5 p0 p9 ^4 {- ?. o9 n                        System.exit(1);* L) E  l+ Z2 L: Y: z% d
                }! g9 G0 j% p) y+ Z8 ?
& Q  ?" j8 p% G

& n* B* T2 }1 j( G4 ~# W4 w/ p' y        }! N6 h  L! k8 {& I0 V

# A* R+ m. Q9 E- y0 ?& q- X$ k+ L        private void swarmSetp() {
+ }6 j# b5 {  H4 d& @$ p  W8 {                list.addLast(new Agent(Id));
3 C' |* v, Z$ [$ i8 g9 o# D6 D                Id++;
# x, _7 R( N4 a; d/ s* E        }+ `9 X; s2 \" d5 t: F

# R  i, M/ z* K* w. e4 l& O        public Activity activateIn(Swarm context) {
6 h; d- C; W$ f" l                super.activateIn(context);
& a/ I3 p( K9 r3 `                schedule.activateIn(this);0 ?; p% [5 F! k- k0 F' `" n
                return getActivity();
  l8 ^: o/ l+ E9 h        }
. l, K- T( `  _" [$ g6 S
$ H  s  J8 v' W0 w, A, ~0 ^* x        public static void main(String[] args) {  |& o  K3 S& n6 v4 l/ D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: a2 `1 g2 L  I# P4 x; ~8 H                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 |( V4 h" O* v" Y5 [% P" B                swarms.buildObjects();
$ u9 Q/ c$ G% ?6 I                swarms.buildActions();' O( E$ _0 v) M0 J0 E
                swarms.activateIn(null).run();: R. o: ?! @" Y+ T9 i
        }
4 z# p2 B) ]( K/ y: b8 t  ^1 U( f8 Q0 Y) Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-8 21:41 , Processed in 0.016431 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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