设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13539|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' J( w  j% j% Z9 p
# q1 M0 }! V# I8 u1 j* X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' c! N" G: @5 p/ w& R* k8 T7 O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. Q8 N' ~, j# L- |: l
swarm.SignatureNotFoundException. g! k( i9 e* Q9 m
        at swarm.Selector.<init>(Selector.java:76)
) A8 v: Y  Q2 |1 [! A$ v& ?        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 g" s; z2 l) ]1 |2 {+ P. j        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% i% ^2 F8 {- C. x% i6 \" Z% Z' r# D- l# ^& M/ F

: g  c7 V# C- b) u8 simport swarm.objectbase.SwarmImpl;; ^! _0 R! i5 M
import swarm.objectbase.Swarm;* k2 d* c# y: J1 `
import swarm.activity.ScheduleImpl;9 c! r" F: A4 H" S! K* M
import swarm.activity.Activity;
8 z, H' w5 U5 g1 z! _import swarm.activity.ActionGroupImpl;! B+ T2 R; L; a2 @. M3 B& R
import swarm.collections.ListImpl;/ ~9 w. S5 K# f9 v) Q; B
import swarm.defobj.Zone;
$ o& b& X- d* }. j4 Zimport swarm.Globals;
2 P. ?" X# r4 k: O1 S. B/ E7 H8 Bimport swarm.Selector;
' D& E6 G$ ?/ G  _) C0 |import swarm.activity.ActionGroup; + h0 ?4 i  S6 ]2 o6 B. E
class Agent {
7 G' u0 N6 N. S: |* @        char id;
$ V* N) T' Y# C0 L- Y1 D; W% M4 N( r+ ]3 _2 ^4 N( O
        Agent(char id) {* j; C; f; W0 H# C; n+ ~; V7 O0 p
                this.id = id;
9 ~+ ?% |) w" K: g9 Q4 Z! j, [        }/ D. ?1 l: J4 l! T

3 Q. p, u) W4 p1 U# J& a        public void agentStep() {
: i+ T0 @: x& e                System.out.println(id + ":" + Globals.env.getCurrentTime());( M% y, [2 ^" L. `/ S9 S- z
        }8 U3 E& f- V! R6 y! J3 o. m
}
! Y2 `; w+ q- i  }; r. D
5 W" I( I1 |+ B( V9 A5 tpublic class ActionGroupDemo extends SwarmImpl {" W+ p6 m; j- e2 a/ c1 X9 P5 s% _' T
        ScheduleImpl schedule;/ u3 P9 Y/ d1 w  S* P
        ActionGroupImpl actionGroup;
7 ~) W/ @) c$ N7 v  t        ListImpl list;
% |) ]! N% D/ V5 V: [$ I4 M        char Id = 'a';( K% V: z2 T9 f  {
" v! H* @) N, W6 d8 x
        ActionGroupDemo(Zone aZone) {6 o/ \# f7 F. g) F2 U, ]
                super(aZone);
0 A, l1 N2 b2 }* b                list = new ListImpl(aZone);; ]+ J/ k! e) c- ~  O. h
                swarmSetp();
/ f3 N% M- M' }( {* a$ P9 d                actionGroup = new ActionGroupImpl(aZone);5 J1 g* T! p9 k' p% d
                schedule = new ScheduleImpl(aZone);- A1 f( R( Z; }; k6 m
                try {/ U* `) r1 p! t  ]6 H8 l& L# w9 l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 N2 f7 r. O* `0 W; P                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  ~/ V( l( v) c1 E+ @! E                        
) z$ B2 r2 P0 L1 H: U7 q4 k# z3 v                        actionGroup.createActionForEach$message(list, agentSel);
$ x9 b: m& ]9 W2 i+ e7 S  {. P, a                        actionGroup.createActionTo$message(this, swarmSel);: A3 n3 D! R6 n9 Z
                        schedule.at$createAction(0, actionGroup);" O+ C$ R6 i! t! @3 j5 d
                        schedule.at$createAction(1, actionGroup);
% o1 D0 `2 h* i, Y( J, T                        schedule.at$createAction(2, actionGroup);
$ r% g% |4 d# L+ c
: t( e7 B% [& c                } catch (Exception e) {
5 A% z) ~2 U% h6 z) O5 C                        e.printStackTrace(System.err);
1 B# t' K6 ~! `& u/ [+ o7 T                        //System.out.println(e);1 i( V( y; s4 A
                        System.exit(1);4 z1 J& E. A' S! k# e/ k3 \
                }! o- u, R9 t' ?# }8 N* C* h  I! y) u

$ r) P" S+ G% L: @% n  C. M" `5 n$ {8 P- ^% G8 }7 G
        }" P8 D- v! K! @) U8 V& [+ F
  |- _! G: n2 f0 H
        private void swarmSetp() {1 y. v7 a( l, Y8 d
                list.addLast(new Agent(Id));
9 `9 N' j9 Z; m0 q8 T0 h; _                Id++;
  r% G% o5 c* Y3 Q( Q, o- p        }3 W" T, I, Y8 k' w8 N. K

! A( p# d- Y8 o; n. n        public Activity activateIn(Swarm context) {
6 Q* W. H: a' a" D+ P, h6 }" B4 q( r  {/ O                super.activateIn(context);9 J1 G$ U/ b' m, m! e! H" E
                schedule.activateIn(this);/ V5 {, F% p8 h0 S5 y0 p$ g
                return getActivity();
; U# ]4 _. H( z5 j        }
5 B! L' S" [  A, W1 a. Z& K& t6 |+ a4 a3 I% @; Y/ ?
        public static void main(String[] args) {
" k8 O5 S  x/ k; L# }0 Q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ }& J0 O$ S  O, W0 ]. P8 l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( `6 v6 k& K6 |( [
                swarms.buildObjects();
; D. |) @/ W3 R" p4 o5 v                swarms.buildActions();
" A. ^: F  ?) W8 t$ J                swarms.activateIn(null).run();* ]7 {3 x* |) i# m# p4 l6 b
        }8 n8 |& Q  n6 ]5 q! L* y* s

# @) S' X! `. ?" T, q}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-10 08:10 , Processed in 0.013755 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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