设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6578|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 t: I. D' z7 Y$ n5 n9 V$ |1 R0 ^( A  p" x5 o# o; Y* y+ F" e
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; x( H) o0 I0 T, |7 q  X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 I# C' a: v; X4 S2 S: A+ _
swarm.SignatureNotFoundException9 ]( {6 F" [/ \5 j0 H
        at swarm.Selector.<init>(Selector.java:76)! H7 ]. S% y& t
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). v1 i% V! C3 D& i' t3 M- }4 i
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  C; @) I& S- n, D7 X3 k0 Y. A
; V) F9 k; U( s3 k0 X7 }% e! x
! @$ V8 j0 C- M. T5 Y: ^8 J3 p% B3 |import swarm.objectbase.SwarmImpl;
# P* |$ h7 b: b& f! |6 limport swarm.objectbase.Swarm;
& X: \7 ^" t5 f' X% z( k3 p  bimport swarm.activity.ScheduleImpl;- `& d$ b+ m) p1 Q4 s! h
import swarm.activity.Activity;
4 X6 r4 e1 }1 w( K! l: kimport swarm.activity.ActionGroupImpl;
  v: {" {$ }0 [2 k7 a% jimport swarm.collections.ListImpl;
1 {+ Z8 h# q+ Y# A' V' timport swarm.defobj.Zone; + k# P9 a' U7 g
import swarm.Globals;
  Z0 B) C5 {1 h7 b+ A4 `- D5 limport swarm.Selector;# ]2 I: B7 ~4 w* b: _
import swarm.activity.ActionGroup; # W% n& |9 J; M
class Agent {
( v4 D* N3 W' }. J: Z- X        char id;
- W5 o, R( j2 @- ?" s3 q; |. p8 t) C$ D' Z" S
        Agent(char id) {! g3 B8 `  `' ]
                this.id = id;
+ z* B$ A' ~: V        }  j% o7 P* C- Q" r0 E/ ]
# @% C- Z3 E  m$ W. W
        public void agentStep() {
5 R- [4 G1 L- m; _4 t& A6 W; b: F                System.out.println(id + ":" + Globals.env.getCurrentTime());
' R4 G! ~& g2 F        }2 [$ d. t* O9 T2 `/ H1 V3 ^
}, X. z: Y* b" Y) E/ b7 e
4 B1 R% q4 M4 a: ]; L+ }
public class ActionGroupDemo extends SwarmImpl {
2 v* p+ U. J/ I0 N3 a( o- }        ScheduleImpl schedule;1 P' B9 E9 v6 o% j7 f& C( k6 c
        ActionGroupImpl actionGroup;$ X9 t* U/ _& u, p+ M- \
        ListImpl list;+ v" T8 U! U& l$ z# j4 ~. C
        char Id = 'a';$ m. ]' l1 j/ @4 a4 g
0 d& a+ s$ k- M8 W' V( i& i) V
        ActionGroupDemo(Zone aZone) {
) x5 [' J4 w- p' F4 A7 }' i                super(aZone);; S" H  b. o0 a( L4 u
                list = new ListImpl(aZone);4 Y6 s6 c; G* n, |" S' f; R' D+ E6 ]
                swarmSetp();( h2 C. e' t$ I) F2 S0 j
                actionGroup = new ActionGroupImpl(aZone);+ W! D0 z6 B$ p) ^/ ?
                schedule = new ScheduleImpl(aZone);
( y0 _! w& W. _                try {
+ E, A+ r. |0 h) q: `) r                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ J3 M- _, J/ W5 m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 s& L7 p( |; D$ }
                        
, j" y' p- x* r$ k; Y" u5 ~' Y, s                        actionGroup.createActionForEach$message(list, agentSel);
# e$ P5 H6 i6 y, y) ^& Z" s                        actionGroup.createActionTo$message(this, swarmSel);
0 O( C& ~. H* d# o1 _0 r+ M                        schedule.at$createAction(0, actionGroup);5 D- ]6 S! x: q1 |
                        schedule.at$createAction(1, actionGroup);' p4 p/ M4 v+ y5 r) t' c# R$ z
                        schedule.at$createAction(2, actionGroup);
, S) l5 Q' b- l- Y+ l
% t; h9 t5 |5 y. f( X                } catch (Exception e) {
, k. h, U7 e  u/ U( Y) k% p                        e.printStackTrace(System.err);
6 H# h' M" m5 |; H                        //System.out.println(e);
; b1 U* s: r$ ]- k' i                        System.exit(1);' w) t7 `( |3 I
                }
$ X' W5 k: J5 w" n; v" _/ Y  F1 p( t# `/ |' ]

! ^/ n3 q$ m$ f6 V7 f6 r        }& G& D  L. `( W% n2 ~3 I
2 _+ A7 V7 q% V& J$ i
        private void swarmSetp() {8 ^- S. H4 P) L$ t4 ~3 y* M+ }, N; _
                list.addLast(new Agent(Id));7 C( E0 W! ?& r- l( w
                Id++;! R7 l- j9 W" K9 f1 ^5 ]$ l2 Y
        }
7 _" X. c: n: v- c( Z* C
# q' K$ G# I" t/ C& Y# f5 u        public Activity activateIn(Swarm context) {9 o  C4 \0 d1 ~- c9 g$ R
                super.activateIn(context);9 E6 s7 e" D7 m! A- x- U* `
                schedule.activateIn(this);2 D, d* a$ n. j- y5 p% H" r, d7 d
                return getActivity();
4 x, r8 ^: Q# h: V6 Y        }& m3 V# `6 K/ `  ?# [% y

! ~! J/ L( O* B$ T& q- S& R        public static void main(String[] args) {& x" N3 u1 V: B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( v# j3 k: M+ P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 b1 k" n% Y6 E5 |3 t/ C
                swarms.buildObjects();
$ W2 a# k! m3 E& G                swarms.buildActions();3 f- \( S5 s4 n4 p- A
                swarms.activateIn(null).run();
, m7 D% M3 E; V3 I* }( Y: p        }; Q  O9 z) M% D1 U: [+ I

6 J7 H8 a. k' J% x3 j* D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-2 00:42 , Processed in 0.016333 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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