设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13111|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - I$ o3 ~, w, }( x; ~  {; F6 e

  z  @' C$ a7 D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; V0 \/ O+ m+ i. y# B
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' p6 x3 ^8 _' G) q% cswarm.SignatureNotFoundException
4 p6 \9 C5 `, D- M        at swarm.Selector.<init>(Selector.java:76)
) E/ f: c& A! R1 \* l* s* i        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& Z! ]- |( W% ^. N' p/ [        at ActionGroupDemo.main(ActionGroupDemo.java:67)! R  c5 k; I8 R! c% ?1 f8 m! A8 A
: L, p. \4 Z3 `& t2 X- k$ W

. ^" K- [. k$ w$ @* Qimport swarm.objectbase.SwarmImpl;
) y( G- `! {2 M% i4 a' bimport swarm.objectbase.Swarm;: L) W! B$ N* c2 f2 N: f- b
import swarm.activity.ScheduleImpl;: b4 l, j0 W/ z, Q5 m! I
import swarm.activity.Activity;: S* K- W* S* O: b: l
import swarm.activity.ActionGroupImpl;. H' S8 ~/ c! y
import swarm.collections.ListImpl;* K5 `' }8 C6 z8 M: `3 ~
import swarm.defobj.Zone; : Y. i) |, z) F, F6 I. w0 g4 Z
import swarm.Globals;7 O) b0 {; i9 k8 N. V, n
import swarm.Selector;
4 K! ]3 k# r% w9 W% ~3 V( Limport swarm.activity.ActionGroup;
  A1 Y) G! J* d0 g4 Q/ q! ~9 _9 ^class Agent {
& m' P+ l. V6 ]* d) R. X        char id;
" P2 O8 G7 }8 d: Y3 h3 c' R' Z! t0 |( b1 N# `
        Agent(char id) {! f* V7 W- T& Q8 T% B, V% B0 H4 t
                this.id = id;1 b8 x; f) V, r' j
        }
" k; v* p0 f! O+ r  S' M; C! l' b9 Z# Y$ S" J4 ^& [6 T* Y. ?- p- F
        public void agentStep() {& k& B6 ^$ w6 h% R4 H; _/ ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, P/ J! H# v8 R, z4 e  `+ \# b        }
* M) ?8 L1 y/ Z" t1 T}
/ d  j+ t& L: G" L, M) ?' t8 j  p! x( S; J
public class ActionGroupDemo extends SwarmImpl {' O# s1 n+ u, D! N
        ScheduleImpl schedule;
% M5 A4 @" Z/ Y, u1 I' i9 q        ActionGroupImpl actionGroup;
; @# x! S2 l7 v6 ?9 M5 P- p        ListImpl list;9 z6 Z3 Y+ e* W- k+ \! O) U
        char Id = 'a';9 N( |0 Z  s. q1 w1 n8 {- d

3 S6 `' y# V/ b( y6 T0 @        ActionGroupDemo(Zone aZone) {' B0 Y0 E+ N' e& T5 ]& S4 x/ l2 K
                super(aZone);/ m, `% k1 d. p2 U0 L
                list = new ListImpl(aZone);1 n4 U- {! C5 c6 X$ a' x3 n
                swarmSetp();
9 Z/ q4 `2 Y' i; Y# D4 b$ l, }& R                actionGroup = new ActionGroupImpl(aZone);
( s8 ~5 p$ M8 t- g" k0 L+ e2 u                schedule = new ScheduleImpl(aZone);$ s3 {( {& X- [! f& \& [( p
                try {
+ z0 n) w4 h; k) l+ A8 s" l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 s3 x! {. U+ \( T
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: M$ ^5 M, x) A# d3 R: W, M                        
) K3 m+ |' t% J' L                        actionGroup.createActionForEach$message(list, agentSel);
6 W3 k5 B; l* e* J5 ?                        actionGroup.createActionTo$message(this, swarmSel);; q2 `% ], M$ O! Y8 \4 V
                        schedule.at$createAction(0, actionGroup);9 i: R2 C# Y6 x4 U( N: S/ |
                        schedule.at$createAction(1, actionGroup);
( y6 ?; W# N6 u- S* @% t8 j                        schedule.at$createAction(2, actionGroup);/ M" m  Z5 X/ r6 t! I' \( t4 |
, ^2 I6 U8 s' s
                } catch (Exception e) {' K8 p& m. d0 ~+ g! T
                        e.printStackTrace(System.err);
. L* F$ ~0 e  w6 u- j3 T                        //System.out.println(e);
! {5 Y! |3 h' e8 }3 n+ x, b                        System.exit(1);
8 N7 P2 ?) k. T- l+ \                }& N5 S. S" Z" p

* `4 R/ U6 W( H4 q; ~
6 O5 e. F9 V& Z/ ]        }5 v7 F/ \+ B* x" J  t0 U/ D

5 q) L; w% n& W% v$ i$ u, }        private void swarmSetp() {
/ }5 O' h5 C% d6 Q7 L4 Y5 L                list.addLast(new Agent(Id));
" t6 l. b$ A/ v+ {  D! h7 X                Id++;+ L' n, k/ L! T5 q  t
        }' `9 p6 l( D, |/ X

+ ]8 V. Y7 [; u1 T        public Activity activateIn(Swarm context) {1 L3 m1 z9 `1 b$ C( _! h
                super.activateIn(context);
  |. Y9 Z$ l$ E; G2 F                schedule.activateIn(this);
' f+ t' \% G% q# _                return getActivity();
0 l" B! d3 W) M3 b        }
7 }$ u2 Z/ v" @* H  i4 P! p& T; q, g
& G, j, a# ^+ U& i' X        public static void main(String[] args) {2 s6 q# ]3 M/ f8 {' [
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 L. S' i8 p" R9 a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  i% e0 y5 M0 r8 i
                swarms.buildObjects();
. B( S7 J0 ]6 ?5 H- f- R                swarms.buildActions();
; A( z7 T9 o) `( j4 f% T                swarms.activateIn(null).run();
4 ]% B: U/ Z% m, a# N  p        }0 j' y/ {9 a) s( |. ?
3 Y# o- m8 k9 b
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-28 16:40 , Processed in 0.016248 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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