设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11696|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) y1 f" v, r( I7 W- L
9 D( B) U0 g: R" E8 y2 C" j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ x( F# _2 K: W( Z, C/ h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ k# v# f& X8 `' \swarm.SignatureNotFoundException, O2 J7 j. A" i7 a6 ^
        at swarm.Selector.<init>(Selector.java:76)
* Y: q8 q2 g0 }  R* Z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. j7 x5 J0 A( x+ m        at ActionGroupDemo.main(ActionGroupDemo.java:67)' ]7 l) s: \: |# V5 J1 s
/ k% f, d8 L( H
$ U, q" r2 j8 f: |7 D
import swarm.objectbase.SwarmImpl;
% y, |% Z( S6 ^) }; dimport swarm.objectbase.Swarm;* {" X: n$ o. r- x5 }7 v
import swarm.activity.ScheduleImpl;
3 P/ P4 @) [9 ?5 Himport swarm.activity.Activity;( |  ?  x7 x6 }( O9 H
import swarm.activity.ActionGroupImpl;3 j* r# A" h) \8 U& Q$ g4 Z
import swarm.collections.ListImpl;: c# _+ t/ Z; J
import swarm.defobj.Zone;
: y/ w" _0 V- l, D$ m7 Z) P9 o. g# Yimport swarm.Globals;. Y! [% k# `8 y$ V2 x
import swarm.Selector;
# N1 e$ d! t$ ?import swarm.activity.ActionGroup; ; g; b6 g, m% X3 N; g' ~  v4 a
class Agent {
1 M0 {4 e- v* x1 f) V% f+ d5 `1 D8 H! V        char id;
1 E6 v6 [9 W9 S+ v! s( K9 e4 |, x% \7 Q# {( w% \) O
        Agent(char id) {) {) Q5 e- O- F* C( Y1 Q9 _' X2 f+ G
                this.id = id;1 Q8 q6 k# Y& Z5 n; M
        }0 Y4 d8 ]; {! E9 |- Y( a
) u5 _1 i: o' K
        public void agentStep() {2 ?6 B0 ?" T" n  F& l- m# ]& d
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( ]! K( F5 [  V  z* h        }4 `9 N, D8 F# V
}
* n9 X6 G. v: g) Q+ N. A! N! m* m* p9 U
, @! w' [4 O$ i6 {4 F$ G2 E: n4 lpublic class ActionGroupDemo extends SwarmImpl {2 `5 q/ k/ s0 ?% n# E6 |/ A
        ScheduleImpl schedule;
' N# l) E. J' N' ~        ActionGroupImpl actionGroup;
- X  z9 \! _- W& x- x9 X+ ~+ i        ListImpl list;
: K  E6 `+ n0 v7 D8 F        char Id = 'a';# l; U9 ]) p* @* K) Y

2 p& ^1 r: w6 t& k" x% V8 h        ActionGroupDemo(Zone aZone) {
. R# ^8 P5 `9 k% e5 t6 g: _                super(aZone);
4 Z: I9 ?: u, \. ?                list = new ListImpl(aZone);3 d  C/ L+ U- m! h8 Y+ Z
                swarmSetp();+ R  g) F: }5 Y2 u
                actionGroup = new ActionGroupImpl(aZone);# w0 {; V/ S% _8 J! g/ U* l
                schedule = new ScheduleImpl(aZone);
- B. A  ?4 ^- S# k2 f: y; v4 V                try {
; q1 l; u6 L/ T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 s4 t4 p4 |5 h8 m) {% S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 m" I+ H: v# {1 U8 k, j
                        : Y# G+ x* g1 V( C% I. H% B! ?
                        actionGroup.createActionForEach$message(list, agentSel);  o7 f' c: r1 s7 K+ D
                        actionGroup.createActionTo$message(this, swarmSel);2 Z1 y; D( t8 A* M, q# Y
                        schedule.at$createAction(0, actionGroup);# s, N" ]' W+ D. |9 A' ^4 g: I
                        schedule.at$createAction(1, actionGroup);8 ~% U, A9 f- k6 S
                        schedule.at$createAction(2, actionGroup);" k" s8 s) k) d" n! S8 h: ]$ \

9 `8 s$ N( ~, V$ i$ w$ J                } catch (Exception e) {
4 Y+ H& R* \6 p; t3 ]1 K6 m                        e.printStackTrace(System.err);; ], _( D1 i( d: ~& h
                        //System.out.println(e);
& M2 O5 v/ Y, H) a                        System.exit(1);/ C: Z  Z4 U4 ?6 o2 Y
                }
+ {* e: D9 |4 K* N9 E+ B
/ o* b7 f! n+ Z) t7 ^6 g* q# N/ j1 q' @6 C; ~/ }# B+ r  A
        }
& r) |! o3 e& L3 D6 h- b6 V
3 [; C  A  j8 N. @0 M9 V9 Q        private void swarmSetp() {3 g3 u( [+ a) t$ m% @6 J; z
                list.addLast(new Agent(Id));0 J5 K5 B" G/ f' P
                Id++;
3 |* e) t  |" k5 a! Z2 s+ s# r        }, A# d" ^: d2 Z3 m- z

$ f/ V& E' \1 W        public Activity activateIn(Swarm context) {
5 ]' @9 n% G1 a2 s' v& v                super.activateIn(context);. n( q) y7 Y/ ]( f1 a. f
                schedule.activateIn(this);
  n( l8 m: u6 m/ U                return getActivity();  a: K9 h$ _9 v( k+ v
        }
3 J6 e+ _+ ^5 X0 a- i5 j! ?* x% M3 j" @/ r5 k1 W
        public static void main(String[] args) {
3 |6 e1 w; W3 P% q0 F& L                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ @+ u" G5 n( i) ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! |. O1 x4 F+ ?5 @, Q/ r7 E                swarms.buildObjects();
, L6 O- m, C3 Z- W: Y! F1 j                swarms.buildActions();
0 r- G# a4 ~* _                swarms.activateIn(null).run();& F: i9 y- b3 Q2 O4 Q
        }
: s) K5 f- v, n
$ F9 ?7 _. I4 q5 c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-19 11:32 , Processed in 0.014469 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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