设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13272|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" l: V7 @+ K; W3 f2 m  a! T. e1 R
8 y; P  h1 K# W% u( u0 [8 H本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 a' ]; _7 S6 l9 W2 O: `2 C4 e2 \9 g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* X; t1 ?9 |+ |0 t% v) ?1 M, c
swarm.SignatureNotFoundException
/ u+ P7 U: Y5 p& V& i2 y% S        at swarm.Selector.<init>(Selector.java:76)9 a5 H, d6 K$ ?& G
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 w. d! ?& R  R- q" O, o) {7 F        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 L+ }( N* _2 w% Y

  p9 {' S1 C8 f7 T* [& Z& h+ @% g, }  r! R! C7 C& v8 m
import swarm.objectbase.SwarmImpl;: r& |. B0 f  U. F! p
import swarm.objectbase.Swarm;+ K8 y, B6 _5 x) g2 S5 {
import swarm.activity.ScheduleImpl;
1 O# c7 m; ?: U, f8 Himport swarm.activity.Activity;
1 q5 L, m, \7 t' d& P, wimport swarm.activity.ActionGroupImpl;( s) E7 l5 v2 R, ^- h
import swarm.collections.ListImpl;
" k$ k& ?/ z) I% D! ^  q( B9 qimport swarm.defobj.Zone; 9 O' u. {$ h% Q# m( R
import swarm.Globals;
. E! d% w3 G) L6 B8 Rimport swarm.Selector;, O, `: z# l% x5 H3 v6 k
import swarm.activity.ActionGroup;
# q5 i, M* Y  }( Tclass Agent {+ b! }$ {% u' |; @# [
        char id;: R7 }& D: l+ s$ x0 u
) u" P8 S, d( [$ }
        Agent(char id) {" y* T7 J6 z% j; [
                this.id = id;
6 p1 H- p: b& v& f! S, H        }- ^/ r' x; O& F: g5 E

7 i6 W4 X/ N5 i        public void agentStep() {
2 a+ ^, w' k+ A9 @6 e- u                System.out.println(id + ":" + Globals.env.getCurrentTime());  M! C. _9 C3 T% e" r( M
        }
9 v! E" w4 i2 N5 L}
3 [9 K0 V7 b% y. z" E' K5 J0 P* e% m+ ~% L; J, J
public class ActionGroupDemo extends SwarmImpl {& l7 B8 ^# h# m' h: v' X
        ScheduleImpl schedule;0 V2 |& |7 O+ n
        ActionGroupImpl actionGroup;
  g1 K9 |  j/ G9 J        ListImpl list;- P3 F7 r. m" w
        char Id = 'a';4 J8 c, J  S& T0 m. c5 K

2 i! G, e. I# E. O5 d" V) T        ActionGroupDemo(Zone aZone) {7 w4 W! m+ }: P# C
                super(aZone);) J* a' [* M, s" r7 X
                list = new ListImpl(aZone);
7 e1 x; k0 r$ |: x) e                swarmSetp();( B' x9 m8 H1 x0 @- B/ z
                actionGroup = new ActionGroupImpl(aZone);5 s* Y. M: O. `" C7 X, D
                schedule = new ScheduleImpl(aZone);& ?0 p5 B. L! N# [5 y( c5 T- I
                try {! i3 j) O6 D) S' d% t
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 W2 c0 y) k* o
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ o  @3 r) j- J$ k2 b                        
' M' g  K( z6 H0 u' Q% f                        actionGroup.createActionForEach$message(list, agentSel);
, h# @4 e0 |8 u                        actionGroup.createActionTo$message(this, swarmSel);3 `/ @8 x5 P- f9 i# z$ T# Y9 S7 @
                        schedule.at$createAction(0, actionGroup);
5 \" J( D! l$ {* \                        schedule.at$createAction(1, actionGroup);% f  F5 D; {9 U2 S
                        schedule.at$createAction(2, actionGroup);
/ d( N% b0 \' J) ~. r
$ ^8 B0 N: L8 Y1 O5 l% ?$ N                } catch (Exception e) {# y0 g' w3 I+ y  B! r2 p7 l5 _6 B
                        e.printStackTrace(System.err);$ A4 w/ j# E1 [0 J* {
                        //System.out.println(e);# B& s8 n, B; ?( V0 ~9 Q
                        System.exit(1);3 x# r- s4 ^1 I5 v% I  w6 y
                }' a8 K2 N' ~4 O
, p5 {$ t1 L' x7 @4 U
4 p! U/ m( ^8 E, t: O  P
        }
' c0 h% b1 I$ W) J* ^- S8 ~( E# A4 q4 @
$ G6 t1 T3 W( G$ c$ X        private void swarmSetp() {
) q; F# c& S& g( m/ X5 L                list.addLast(new Agent(Id));. A3 }' h0 j6 g
                Id++;, b2 I% n' q& l' a; n* u
        }
7 \: Q6 d( B8 @4 ?& J+ o0 q
; y2 q7 q3 P  i& S5 x- W        public Activity activateIn(Swarm context) {
( ?* d4 A) j$ s2 X# V5 w                super.activateIn(context);5 _* U& j5 R" m3 u- v* `) ?
                schedule.activateIn(this);% U0 c+ l5 z# C8 w. W, E: G, n
                return getActivity();
4 v* `& T3 ~5 N        }0 r9 R' ]* y5 l8 |- w. k

9 _* C+ T# M, t% v$ f- H! x        public static void main(String[] args) {+ Q" |+ e8 p7 m: T5 O; J) e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; d% D7 U) X2 O, u' U- @; ]$ C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);; s$ L! D5 a9 [+ M' [
                swarms.buildObjects();/ A1 n2 A% O& K7 P
                swarms.buildActions();
! }4 S7 S6 _7 z% B. W                swarms.activateIn(null).run();
6 H' n  L2 F8 [9 N        }
5 x8 Z* m( R. A9 Z# H7 b# U* }$ z& Y: I! i; e) ]1 p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 13:09 , Processed in 0.015564 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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