设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7874|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ y+ s. @: [2 k9 E+ l$ i, G/ B8 l% H8 y6 q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( J; ~) S6 ~" ]) v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! B* p: A1 U% N: ~- K
swarm.SignatureNotFoundException
  a# `6 q+ w7 Z( u        at swarm.Selector.<init>(Selector.java:76)
0 {; v  [4 P: S+ J3 W        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 C. J! I& F/ A
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 f: n) k* a* e- o, `7 L+ t; A: V8 _* ?+ E7 |; x4 p
0 B$ D; t" l0 T2 j, T, j, ]9 X9 n( j
import swarm.objectbase.SwarmImpl;4 L) e) H, d0 b
import swarm.objectbase.Swarm;, j! W* A1 j+ X0 y
import swarm.activity.ScheduleImpl;7 }: H  O9 R5 k' \5 [; g" n
import swarm.activity.Activity;$ F. R  L2 Z, z
import swarm.activity.ActionGroupImpl;$ P, I4 @3 ]# \0 i8 t
import swarm.collections.ListImpl;9 ^, w# ]5 _( p" f
import swarm.defobj.Zone;
: l$ ]& H; H3 k% ?6 }import swarm.Globals;
& p5 C! O. }' yimport swarm.Selector;
' L4 z9 Y/ i  simport swarm.activity.ActionGroup;
4 }( n5 r( n3 C2 B. J; V; lclass Agent {! O4 F8 N  X! k& `. r1 c( P
        char id;/ K- A* B, g! l4 n! I2 L+ J  d

; m  o/ R% t8 g& {& [$ u- w+ t        Agent(char id) {" W6 R* ~. `7 N. Q7 }
                this.id = id;
' T- j. Q* R- Z0 H        }$ ?) ]* q! W5 Z9 G0 a

- B, G, A% F& @' Q        public void agentStep() {* V' I9 Z! q2 {9 J, c
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 q3 W2 O! g8 g6 ?; _
        }
& s! O  s  Z! O: V}! y$ p/ t4 q! @$ p" Y6 Q2 a) ~

- e( l. f0 A  m: Z; \& M8 ~public class ActionGroupDemo extends SwarmImpl {) u6 B( m% U* U2 x9 `% T
        ScheduleImpl schedule;, c3 `% I6 x5 S& v% W
        ActionGroupImpl actionGroup;
5 H! E  N8 Z" E) Y        ListImpl list;/ ]# v# ^+ `3 x9 I+ v. R+ @3 g
        char Id = 'a';
4 }, P$ X7 `0 B  z' F' o% _5 V" J! s: v( f: M; v- L2 |
        ActionGroupDemo(Zone aZone) {1 Q/ u) E& H2 M$ L2 T' o
                super(aZone);
. w* w/ o" Z1 K9 Y1 X" C( k                list = new ListImpl(aZone);* V$ T" Y* s2 L/ Z4 n# e
                swarmSetp();
* V7 w: @8 `& D: m8 X1 J3 L                actionGroup = new ActionGroupImpl(aZone);- b7 n- r+ ]9 R4 T- o- ?
                schedule = new ScheduleImpl(aZone);
0 i# l( W; r; s" c* s; g' @2 O                try {
, Y8 b. ]/ Z# @' N  ]% b, B                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  C2 ~7 B, ]9 n1 `; G$ F& ?. g
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- U  \, x" A7 l                        ; g2 @' k  G4 m! R2 @
                        actionGroup.createActionForEach$message(list, agentSel);
& h6 Z. o2 F% G) o) r) d2 |                        actionGroup.createActionTo$message(this, swarmSel);
! \8 \$ F$ P: W& [- |5 O/ L/ \9 B0 W                        schedule.at$createAction(0, actionGroup);
4 [2 o! s) J( U; O  t                        schedule.at$createAction(1, actionGroup);5 F* P7 T# s9 ]2 h: [
                        schedule.at$createAction(2, actionGroup);! q! P5 j: z- s: \/ y
! N7 s. {! |$ S- |0 K1 y$ i
                } catch (Exception e) {! g( ]6 r% ~9 M% _' m6 M( ]
                        e.printStackTrace(System.err);
: O5 b- L1 d1 k6 G/ [                        //System.out.println(e);8 Z- }& `6 z" p2 Y0 h" \
                        System.exit(1);
0 l$ h7 q& Y/ {                }
; u% l" O4 B7 M& s
+ f, @( h) ]! [0 h, O
6 m! r; n, g- z# \2 ^# A        }
* D0 I& X# W- w2 \, _; l) \3 I( ]4 J
. |) F6 Q  D7 F3 _/ b# f        private void swarmSetp() {
) i# t; n  \. ^# M+ K                list.addLast(new Agent(Id));4 J; B; G  U5 _. Y7 z5 z" x
                Id++;
, x9 |. M4 _  f2 l/ u( C5 g        }6 r  T5 o. X; z2 h

1 `3 w' C# H2 v. b3 w        public Activity activateIn(Swarm context) {5 _( C# u, a  @' Y% i% b  g
                super.activateIn(context);
8 C1 I/ l2 S5 e6 K/ c9 w) h/ y                schedule.activateIn(this);, u  J% P0 U; U
                return getActivity();% _+ \- @) v7 X+ m2 c, E
        }6 p0 f8 ~/ ^9 `/ E. R: K& E  K* y0 g
5 v: p  T6 n. F6 n/ ~
        public static void main(String[] args) {
, ~' K; C. i" I9 x& c9 m+ T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 {( E7 Z8 W( C, A3 A9 K* x                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# {! S. O6 \3 S  \  g5 z                swarms.buildObjects();
5 g; M! x1 X$ n# V" i; w4 q- g8 ?                swarms.buildActions();
# h8 R! }! F7 E7 R6 p                swarms.activateIn(null).run();
1 V6 m- T, v* v! f3 z$ {  _        }
- S- c1 k% m/ E5 U
. p; {) {: ?& M4 ^; K& k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-19 02:07 , Processed in 0.015699 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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