设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6960|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # Q5 M" V9 G: b* t% L" |! }8 i

9 Q% d' t  [: w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) x5 e1 o, c( \: h, Z0 j
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 J. p+ c9 s( x' J% a
swarm.SignatureNotFoundException# Y5 g, `0 l) Z, K$ S* h3 M$ ?7 _
        at swarm.Selector.<init>(Selector.java:76)
5 q+ o" ~# P$ h# g0 [4 e        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# h* _1 F# ]# o' U* R- r- Q- K
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 B& j0 ?% E- W5 V8 Q2 L8 P1 k+ a

: \# w3 N* z, z' s/ F+ ?  C5 z  C; H4 q3 g) D" T1 K& U
import swarm.objectbase.SwarmImpl;/ o. o  q$ r* i0 m( `* i- S
import swarm.objectbase.Swarm;
4 G9 ?' T( I* b2 c# Bimport swarm.activity.ScheduleImpl;4 t, R1 `/ `- A2 \
import swarm.activity.Activity;5 a+ |. y7 ?3 E9 z1 o; w7 m
import swarm.activity.ActionGroupImpl;! T* A3 [; e3 I
import swarm.collections.ListImpl;
& a& Q" h- a+ _  ]; qimport swarm.defobj.Zone; 1 R/ I$ a8 c# h* [+ f
import swarm.Globals;
' M* w0 o& ]8 @+ F" b& E; Mimport swarm.Selector;
0 Q8 F& w2 z: @' k7 iimport swarm.activity.ActionGroup;
; @& c1 g/ |5 h4 p. L. cclass Agent {
: b% f7 y- j0 X4 ?! Y        char id;" R6 H- ~+ M+ e; Z( z" K1 \7 w

, q0 E: [) _7 e9 }        Agent(char id) {0 ?& y8 W2 a& h4 v
                this.id = id;
& X! n8 H1 i5 O/ i9 c        }
0 w, O6 P& v  M' V  O8 V: \4 Z
' o9 G; H, X5 s, f, C# `0 v        public void agentStep() {
+ A3 K, c2 p6 z$ @* \                System.out.println(id + ":" + Globals.env.getCurrentTime());; v# Z- o- {/ }$ J* Q6 }0 }
        }
3 }  Y" `0 ?9 h}% }7 ^) T  V! |* E4 R) |

. z  I& T. L0 c  Y+ O0 Opublic class ActionGroupDemo extends SwarmImpl {& Z9 J0 ]# n4 M
        ScheduleImpl schedule;
, j8 j: y# [- T! s* ]) M: H& X/ Z: N9 H6 G        ActionGroupImpl actionGroup;1 }, D0 z" J& H( i+ ?# y8 o: Q
        ListImpl list;! Q' W' @# |3 T6 f$ p
        char Id = 'a';
1 M  ~4 w# k* v) F  Z- m+ n" Z. L/ ~; U3 E
        ActionGroupDemo(Zone aZone) {
5 X; w$ @- P  Y. ]                super(aZone);
2 y- S& ]% W6 a3 p% e+ V5 Z                list = new ListImpl(aZone);7 a. A4 m. U4 L
                swarmSetp();
9 L) _1 s* C, F. n6 E                actionGroup = new ActionGroupImpl(aZone);
- D1 z" X1 d* K0 V                schedule = new ScheduleImpl(aZone);" t! Q+ q$ p/ ^* s
                try {5 d$ C1 O; B( T
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  u6 n- ^+ r9 d* x
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
) D0 b: L& M2 w4 u3 D* W                        $ F3 U8 `5 l" l9 |  n+ f6 W
                        actionGroup.createActionForEach$message(list, agentSel);  k+ Q1 k0 C" O( d' _, f8 t) ?
                        actionGroup.createActionTo$message(this, swarmSel);
+ w1 V; s* c9 G, @' J$ A                        schedule.at$createAction(0, actionGroup);
1 \5 Q6 X5 {. g# r+ O                        schedule.at$createAction(1, actionGroup);7 @( k! O" @( h1 L% f) |' V4 v
                        schedule.at$createAction(2, actionGroup);
! H" A9 _9 U6 g
  o8 Y! U1 \( ]' Q* M6 n- B' r* y2 X                } catch (Exception e) {
' x4 z0 n+ J9 k+ b, L                        e.printStackTrace(System.err);
* F8 |6 B" X4 t! n2 R% v                        //System.out.println(e);4 p6 d  t2 w2 H* t& Q' v! e& Q
                        System.exit(1);! R5 N% f, r! X  s' {. V. j$ Y
                }7 ^! p% a6 V) K  _& F. @- |: K" d5 z  ?  u

/ n1 W1 L% r' T' g2 a8 E/ \. S. b) K* i# N) x: T  R# E
        }' ^/ Z- o. V4 |" E& s

9 Y( A5 `4 M, B( k4 J        private void swarmSetp() {9 k+ S  ]1 v3 G' ^' b6 N6 U
                list.addLast(new Agent(Id));
5 Y* L# i% e5 n/ k5 Y/ q                Id++;2 Q; Q. r5 |$ L% r. z
        }0 m% P+ I. P: D" ?' ]
3 b3 Z. E& J$ e3 y( ~0 |. [
        public Activity activateIn(Swarm context) {
1 h4 v. [6 P2 l$ _7 T, m) i                super.activateIn(context);
6 |0 @8 W' j: ?% t3 ~, G                schedule.activateIn(this);( X; s; ~$ o0 N  L
                return getActivity();
, Q: k% X5 g/ M& l) D9 L, G% a        }+ l; D$ v9 X$ C3 T2 _  |7 G
0 n& W5 P1 a$ z& q0 @
        public static void main(String[] args) {9 h" {* Z# n( J# ^' ^' a$ w
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 J; w, k2 y* V
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 l; W! b- x+ A: q/ V) y, u. k                swarms.buildObjects();5 R0 W& R9 F# L# J; G; ^$ X. P
                swarms.buildActions();
) b, V6 x3 x- ~- k) W                swarms.activateIn(null).run();' T; P1 W  t6 v. j: R
        }# V2 ]! i3 _! z# T. B

4 k+ g! b/ G6 l; h" {: x- q1 e& s}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-14 17:25 , Processed in 0.016637 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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