设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6265|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 F- c* O6 X- Y3 i6 T# U+ O$ B' |( N- P* }5 }
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ v( D/ q, W8 t, F* X) E% y7 C6 ]% z3 U
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& G6 k# ?6 N1 D3 T; I* d- c
swarm.SignatureNotFoundException
) t2 L4 u2 V. V  Q6 C        at swarm.Selector.<init>(Selector.java:76)
: p( C6 \6 B& T- k' C' n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' z  C9 Q3 r6 _% h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 k' g7 D  C0 o, ~3 F! f: l
: F5 @* s. b# A& T

" A* ?# e# C, [& v) J1 nimport swarm.objectbase.SwarmImpl;
$ G; a0 r8 K+ v  wimport swarm.objectbase.Swarm;
; ]( I4 x+ Y( P$ W2 {5 h* [8 dimport swarm.activity.ScheduleImpl;
) w' i: E  ?# h0 v9 o8 H8 S2 ~# ]import swarm.activity.Activity;
& O# ~1 G) U& g: B* Y5 p  Gimport swarm.activity.ActionGroupImpl;
+ p4 g0 g; z! y$ P; p0 Vimport swarm.collections.ListImpl;& `. a; A% y6 z6 W, O) K; Z
import swarm.defobj.Zone; ( \: j9 V, ~' [/ b. \$ b. `
import swarm.Globals;
0 R' Y( g3 z1 R! @, Pimport swarm.Selector;6 W& V: N3 M( E  R0 A3 a0 z  e1 q' f
import swarm.activity.ActionGroup;
+ K1 R0 v# ^4 g! c. B" bclass Agent {4 C0 Q1 M# C6 g4 s5 r# o
        char id;
& A" x. z: q1 V7 K4 i' m; Q* D6 x6 s: e$ \
        Agent(char id) {* Z# \8 O; P" {' S; n6 K
                this.id = id;$ ?8 `8 \' T4 ~
        }: W( w" n- Q& |, Y3 E; a8 j' `

0 w) T  {& l+ v$ ]4 q* {        public void agentStep() {+ W: \0 [0 \" x% X. u
                System.out.println(id + ":" + Globals.env.getCurrentTime());$ g" @" W7 d  r+ {% l
        }7 F1 p% S" |7 r; ?4 p- H) \
}* q5 u: T  E2 w
. i% T, X" E8 u' [8 K) f7 U% d
public class ActionGroupDemo extends SwarmImpl {
( }- u) e0 i1 n. o; r$ ]" H        ScheduleImpl schedule;
( P# Q$ J; Y: L- Y" J6 ~# ?6 D        ActionGroupImpl actionGroup;
) J3 w* g' h. p" ]        ListImpl list;
6 S8 v1 f& c. a* J* \! D! a        char Id = 'a';
# e$ ~( ]$ Y% D1 ^0 n: f( F+ f5 P( J9 O7 h& \
        ActionGroupDemo(Zone aZone) {
7 I& |: M3 ^4 I2 i+ m. i" x# n                super(aZone);# M% c. `. j5 t1 V: ?' t
                list = new ListImpl(aZone);. {+ y  Q* ]% \" H
                swarmSetp();/ |# M" d/ v' B: c
                actionGroup = new ActionGroupImpl(aZone);
& R" _% @6 g" h7 a- ~0 B" ~                schedule = new ScheduleImpl(aZone);
8 a8 A, ~, v0 z                try {
9 c6 d* @' K" A. H6 ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ f0 r  q5 o, `# s0 S7 C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( ~5 k9 g+ E% t7 C! r2 R; a
                        / d0 U/ d5 C- ]+ B8 R
                        actionGroup.createActionForEach$message(list, agentSel);
/ {) l* y% J' Y" Z. d) c                        actionGroup.createActionTo$message(this, swarmSel);
! K) `8 s: \% \/ V" o* K                        schedule.at$createAction(0, actionGroup);5 t! O( S1 a, |: d; B, |# ^: q
                        schedule.at$createAction(1, actionGroup);8 t+ D: o0 x" a% z
                        schedule.at$createAction(2, actionGroup);7 M' D  o! A2 i/ Q# [& M5 d/ J
# ]) ^1 @4 B9 U5 W8 N" ^4 c, N
                } catch (Exception e) {1 A. k; \% U9 ?$ u' |: d% y0 d4 ~
                        e.printStackTrace(System.err);4 x6 _( z2 u3 ^7 n
                        //System.out.println(e);
1 |0 ^  ~1 J, ?# @                        System.exit(1);
! J5 N0 k. K7 ^( h1 E" v# G                }
- P: W- ?$ f( S9 B' `: y! R7 X8 c& y  h2 ^) m* w( m( g

3 j1 ?' R) k; V! q5 q% J% W        }6 j& u; v+ T7 }' e3 S4 e. q

8 U9 L2 Q; \; o% T2 g& s        private void swarmSetp() {4 W' l" `4 Z; g( {3 |( c
                list.addLast(new Agent(Id));7 z9 i$ P7 X0 e! f
                Id++;
' N0 u& ~; m5 t9 e4 e1 u        }5 m4 @% z3 r1 I' A5 X; U2 Y
5 X3 V' T9 ~7 R  m
        public Activity activateIn(Swarm context) {
* k% ]6 ?5 q% E8 P5 u( V                super.activateIn(context);0 a& ]& B/ Q2 Z  ~
                schedule.activateIn(this);
- z) k0 C( r, y4 ^. ]                return getActivity();
; e! U& J7 j5 X) o3 t# W        }
0 M' b" y' g- c" y! H" u) e1 ~
% \" c$ x) p7 w8 F        public static void main(String[] args) {6 X; M; s, z; C. o9 {7 u4 w
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% I0 P, b% ~3 \/ {4 `$ Z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ t. }# _% t4 i; n' q% y                swarms.buildObjects();
" j6 X/ R% C' a; ]4 U1 s7 {' c                swarms.buildActions();4 }' [+ O  b" d  }! O. S* C
                swarms.activateIn(null).run();
5 T0 X1 w0 _& Q4 I        }; ?$ b4 V  G1 }  c: ]+ M

: f5 D7 v$ n$ H) o2 ]  l! I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-23 03:25 , Processed in 0.021399 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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